我从一个无法找到任何参考资料的sqlite3查询中得到一个错误。谷歌搜索字符串让我深入了解SQLite代码本身,这是如此不透明,我无法理解它。
表架构:
CREATE TABLE quote (
seqnum INTEGER,
session STRING,
timestamp_sip INTEGER,
timestamp_1 INTEGER,
market_center STRING,
symbol STRING,
bid_price INTEGER,
bid_lots INTEGER,
offer_price INTEGER,
offer_lots INTEGER,
flags INTEGER,
PRIMARY KEY (symbol, seqnum) );
查询:
select (seqnum, session, timestamp_sip, timestamp_1, market_center, symbol)
from quote
where symbol = 'QQQ';
错误:
错误:行值使用不当
我不知道该怎么做。表中有大量数据与查询匹配:
sqlite> select count(*) from quote where symbol = 'QQQ';
2675931
有人能在这里提供一些指导吗?Sqlite版本为3.16.2。
5条答案
按热度按时间tmb3ates1#
不要紧。选择列周围的圆括号(复制/粘贴遗留下来的)就是问题所在。可能是糟糕的错误消息。但这是我的错。
k5hmc34c2#
我在使用Rails5.2应用程序时也遇到过类似的情况。
对于我的例子,我试图为应用程序中的一个模型编写一个搜索查询:
问题是我使用逗号(
,
)来分隔搜索参数,我只是改正了使用OR
:vhmi4jdf3#
我从查询中删除了方括号,它对我有效:FROMSELECT(Column1,Column2,...)从表到选择列1、列2、...发自表格
suzh9iv84#
是的,这个错误发生在我的代码中,我发现了这个问题,但没有一个答案对我有帮助。
我通过*SELECT命令中的删除同一列修复了这个问题。
这是问题SQL命令**(不要使用这个)**:
这是固定的SQL命令**(请使用此命令)**:
tjjdgumg5#
只是
那它就起作用了。