参数计数不匹配?但我相当确定它们匹配
我正在使用 SQLite 在 Air 应用程序中运行它。尝试运行查询,我收到此错误,但似乎它所抱怨的情况不应该是这样,除非我误解了某些内容。
详细信息:'参数计数不匹配。在指定的 SQL 中找到 1 个值,并在参数属性中设置了 3 个值。 的预期值
':PatientId' SQL 语句文本
SELECT DateTime, BolusTotal FROM Bolus
WHERE DateTime >= ':Date :StartTime'
AND DateTime < datetime(':Date :StartTime', '+24 hours')
AND PatientID = :PatientId
ORDER BY DateTime ASC
:并且设置了 3 个参数。 :日期 - 2011 年 4 月 3 日,:患者 ID - 1,:开始时间 - 00:00:00。
我错过了什么吗?因为我在 SQL 中看到指定的 3 个参数...
I'm running this in an Air app using SQLite. Trying to run a query and I'm getting this error, but it seems like what it's complaining about should not be the case unless I'm misunderstanding something.
details:'Mismatch in parameter count. Found 1 in SQL specified and 3 value(s) set in parameters property. Expecting values for ':PatientId'
SQL statement text:
SELECT DateTime, BolusTotal FROM Bolus
WHERE DateTime >= ':Date :StartTime'
AND DateTime < datetime(':Date :StartTime', '+24 hours')
AND PatientID = :PatientId
ORDER BY DateTime ASC
and the 3 parameters are set. :Date - 2011-04-03, :PatientId - 1, :StartTime - 00:00:00.
Am I missing something? Because I see 3 parameters in the SQL specified...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
单引号中的参数不会被识别为参数 - 它认为它们只是字符串的一部分。仅 :PatientId 被视为参数。
在第一种情况下,您需要传入完全格式化的日期时间,而在第二种情况下,只需在调用外部添加 24 并将其作为另一个参数传递即可。
The parameters in the single quotes are not being recognized as parameters - it thinks they are just parts of strings. Only :PatientId is seen as a param.
You need to pass in a fully formatted datetime in the first case, and in the second, could just add the 24 outside of the call and pass that in as another argument.