sqlite查询,语句没错,却提示语法错误( near “Index“:syntax error)
问题:
使用sql语句SELECT * FROM ChPoint WHERE Index>=1547 AND Index<=2306; 查询时,检查了好几遍语句也没发现有错误,试了 SELECT * FROM ChPoint WHERE Index BETWEEN 1547 AND 2306; 一样报错near "Index":syntax erro
解决方法:
经过坚持不懈的查询,终于发现Index是sqlite的保留关键字,如果字段中使用了Index,那么查询这个字段时不能直接使用,需要用中括号括起来再用,比如此处语句写为以下方式就不会再报错:
SELECT * FROM ChPoint WHERE [Index] BETWEEN 1547 AND 2306; 或者
SELECT * FROM ChPoint WHERE [Index]>=1547 AND [Index]<=2306;
sqlite保留字搜集
ABORT CREATE FROM NATURAL ROLLBACK ACTION CROSS
FULL NO ROW ADD CURRENT_DATE GLOB NOT SAVEPOINT
CURRENT_TIME GROUP SELECT ALL CURRENT_TIMESTAMP
HAVING NULL SET ALTER DATABASE IF OF TABLE ANALYZE
DEFAULT IGNORE OFFSET TEMP AND DEFERRABLE IMMEDIATE
ON TEMPORARY AS DEFERRED IN OR THEN ASC DELETE INDEX
ORDER TO ATTACH DESC INDEXED OUTER TRANSACTION
AUTOINCREMENT DETACH INITIALLY TRIGGER BEFORE DISTINCT
INNER PRAGMA UNION BEGIN DROP INSERT PRIMARY UNIQUE UPDATE
QUERY INSTEAD EACH BETWEEN BY ELSE INTERSECT RAISE USING
VACUUM RECURSIVE INTO END CASCADE CASE ESCAPE IS
REFERENCES VALUES VIEW REGEXP ISNULL EXCEPT CAST CHECK
EXCLUSIVE JOIN REINDEX VIRTUAL WHEN RELEASE KEY EXISTS
COLLATE COLUMN EXPLAIN LEFT RENAME WHERE WITH LIKE FAIL
COMMIT CONFLICT FOR LIMIT RESTRICT WITHOUT RIGHT MATCH
FOREIGN CONSTRAINT
原文地址:https://blog.csdn.net/lvyiwuhen/article/details/135696159
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!