作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
[更新:如果我在参数中进行硬编码,查询就会起作用 - 所以这与我向查询添加参数的方式有关]
对于我的一生,我无法弄清楚这里的问题是什么。
这是传递给数据读取器的查询:
SELECT * FROM (SELECT TOP ? StartDate, [ID] FROM
(SELECT TOP ? StartDate, [ID] FROM Story
ORDER BY StartDate DESC, [ID] DESC) AS foo
ORDER BY StartDate ASC, [ID] ASC) AS bar
INNER JOIN Story AS t ON bar.ID = t.ID
ORDER BY bar.StartDate DESC, bar.[ID] DESC
参数按以下顺序添加:
var pNumToRetrieve = new OleDbParameter("", OleDbType.Integer) {Value = numToGet};
var pResultSet = new OleDbParameter("", OleDbType.Integer) {Value = resultSet};
_cmd.Parameters.Add(pNumToRetrieve);
_cmd.Parameters.Add(pResultSet);
如果我直接将此查询输入到 access 中,它就可以正常工作。但是,当从 ASP.NET 运行查询时,出现以下错误:
SELECT 语句包含拼写错误或缺失的保留字或参数名称,或者标点符号不正确。
我做错了什么?
谢谢
亚当
最佳答案
Jet SQL 中的 TOP N 查询中的 N 不能参数化,期间。您必须即时编写 SQL 字符串才能获取变量 N。这意味着您不能使用已保存的 QueryDef,或者您必须编辑 QueryDef 的 SQL 并在使用它之前保存它。
关于asp.net - MS Access 错误 : The SELECT statement includes a reserved word or an argument name that is misspelled or missing, 或标点符号不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1133993/
我是一名优秀的程序员,十分优秀!