SQL语句达人请进~

Lucky41 2010-09-07 06:01:05
我写了一段SQl语句

select * from Photo where convert(int,substring(sortID,3,2))=" + CmID + " and typ=1;

是想取 sortID(类型为varchar 形似XX99_99) 的第3、4位 与一个传入的数字进行比较

在SQl Sever数据库上没问题 后来我换成ACCESS的数据库就报错了


异常详细信息: System.Data.OleDb.OleDbException: IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。

好像说是占用了ACCESS的关键字....

搞不懂 求高手解答 感激不尽!
...全文
117 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lucky41 2010-09-07
  • 打赏
  • 举报
回复
不好意思 是我粗心了 是type的类型不对~
谢谢8楼~
Lucky41 2010-09-07
  • 打赏
  • 举报
回复
额...请问8楼大哥 网页提示出错 标准表达式中数据类型不匹配 是怎么回事?

sortID 在Access数据库里是文本类型

传入的是数字 我定义了一个 int CmID 接收的

问题在哪啊?
wuyq11 2010-09-07
  • 打赏
  • 举报
回复
"select * from Photo where Cint(mid(sortID,3,2))="+CmID+" and typ=1"
Lucky41 2010-09-07
  • 打赏
  • 举报
回复
哎~小弟我整半天还是整不明白啊 哪位能帮我把SQl语句写出来 感激不尽啊!
冒名者 2010-09-07
  • 打赏
  • 举报
回复
我也搞不懂了, 好久没用access了 都忘记了 肯定是关键字的问题 你看看帮助里 有没有 方法可以直接比较
Lucky41 2010-09-07
  • 打赏
  • 举报
回复
cint(substring(sortID,3,2))

cint(int,substring(sortID,3,2))

都不对~我第一次用ACCESS不知道怎么搞啊 大哥你帮人帮到底咯~
冒名者 2010-09-07
  • 打赏
  • 举报
回复
把convert 换成cint 试试把 我也忘记access里用什么了
Lucky41 2010-09-07
  • 打赏
  • 举报
回复
那请问要怎么转换成数字进行比较呢?
冒名者 2010-09-07
  • 打赏
  • 举报
回复
access应该是不支持convert 把它改成cint 试试
q107770540 2010-09-07
  • 打赏
  • 举报
回复
convert关键字access不支持吧

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧