Android sqlite syntax error 引发的错误以及思考

      相信不少人都会使用android的内置数据库sqlite进行数据库查询,也或多或少会遇到这个问题 
android.database.sqlite.SQLiteException:near  syntax error (code 1):

一般来说,这个异常出现的情况是数据库的语法书写错误,很正常嘛,有时候sql的查询语句这么长,也难免会打漏个空格什么的之类的。但是今天我遇到了同样是这样一个问题,在机器上测试过是没问题的了,但是到线上就出问题了。所以立马去排查问题,发现5.0以下版本都会报错,这就奇了怪了,难道还跟版本有关?

       立马去google一番,还真的发现是版本的问题,sqlite和API版本对应关系如下:

       

      而我使用的语法是With, 刚刚好要sqlite3.8以上才支持,  如下:

       


      比较倒霉的是,虽然IDE是支持检查方法在API的版本关系,但是sqlite的语句是字符串,IDE自然检查不出来,所以,GG了。特地写了这个文章,希望可以帮助之后遇到这个问题的朋友。

 参考链接如下:

  sqlite介绍使用

 with语法的使用

  

      

猜你喜欢

转载自blog.csdn.net/taoszu/article/details/80144326
今日推荐