sqlite中使用substr(x,y,z)函数查询不出数据

wangq2110 2014-10-27 10:25:57
我使用的数据库是sqlite3.7.14版本,开发用的是c#语言,开发环境VS2013。写了如下一条sql语句能在查询分析器里正确查询到数据,但是放到开发代码里就查询到的数据为空,好像这个sql语句根本不起作用!各路大神,谁知道原因,解答一下啊!
sql:select 编号,名称,政区码,行政区,监测点类型,建设性质,流域水系,侵蚀分区,三区划分,小流域名称,经度,纬度 from 水土保持_监测点 where substr(政区码,1,4) ='3712'
...全文
335 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangq2110 2015-01-05
  • 打赏
  • 举报
回复
引用 9 楼 conpgy 的回复:
lz,这个问题解决了么,我在iOS上用FMDB,基于sqlite的用substr作为判断条件也查询不出来,其他的都正常。
没解决,只好换了其他的sql语句(like语句)查出来了。不知道为什么。
无着无依 2014-12-04
  • 打赏
  • 举报
回复
lz,这个问题解决了么,我在iOS上用FMDB,基于sqlite的用substr作为判断条件也查询不出来,其他的都正常。
无着无依 2014-12-04
  • 打赏
  • 举报
回复
lz,这个问题解决了么,我在iOS上用FMDB,基于sqlite的用substr作为判断条件也查询不出来,其他的都正常。
无着无依 2014-12-04
  • 打赏
  • 举报
回复
lz,这个问题解决了么,我在iOS上用FMDB,基于sqlite的用substr作为判断条件也查询不出来,其他的都正常。
wangq2110 2014-10-29
  • 打赏
  • 举报
回复
引用 7 楼 Z65443344 的回复:
应该是你数据库里的数据,有不足4位的,你截取4位,就出错了
不行加个case when判断一下长度,再截取

貌似不是这个原因,数据库里的数据都是6位的,截取4位应该没问题。
於黾 2014-10-28
  • 打赏
  • 举报
回复
应该是你数据库里的数据,有不足4位的,你截取4位,就出错了 不行加个case when判断一下长度,再截取
wangq2110 2014-10-28
  • 打赏
  • 举报
回复
引用 4 楼 sp1234 的回复:
sqlite不认识什么unicode之类的编码,只认识byte。 尽量选择使用很好支持unicode编码的数据库。
这是我使用sqlite遇到的第一个奇怪的问题。没办法啊!公司开发的底层框架就是和sqlite配套的,我一个搬砖的改变不了这个事实啊!
wangq2110 2014-10-28
  • 打赏
  • 举报
回复
引用 1 楼 fanlose2 的回复:
我看这个语句没什么错,仔细检查检索条件和sql语句。 另外,你发个数据例子上来,只写这样的描述,很难给你回复。
数据库数据已经清空了,看不到了。我的解决办法就是给二楼的回复。就是用我问题里的那条sql语句时查询不到任何数据。换成like 那条sql语句能查到政区码是3712的正确数据。我用substr或者like 是因为我需要从政区码里截取4位和传过来的参数(3712)比较。
  • 打赏
  • 举报
回复
sqlite不认识什么unicode之类的编码,只认识byte。 尽量选择使用很好支持unicode编码的数据库。
wangq2110 2014-10-28
  • 打赏
  • 举报
回复
引用 2 楼 Z65443344 的回复:
先确定你查询分析器里连接的数据库和用代码连接的是同一个库
必须是一个库啊!我换个方法使用下面这条sql语句就得到正确的查询结果了。 SQL: select 编号,名称,政区码,行政区,监测点类型,建设性质,流域水系,侵蚀分区,三区划分,小流域名称,经度,纬度 from 水土保持_监测点 where 政区码 like '3712%'
於黾 2014-10-27
  • 打赏
  • 举报
回复
先确定你查询分析器里连接的数据库和用代码连接的是同一个库
fanlose2 2014-10-27
  • 打赏
  • 举报
回复
我看这个语句没什么错,仔细检查检索条件和sql语句。 另外,你发个数据例子上来,只写这样的描述,很难给你回复。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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