NBearLite 用MsAccess数据库时 Count() 的错误(BUG?)
先看出错信息:
语法错误 (操作符丢失) 在查询表达式 'COUNT([Messages].[Id]) [COUNT_Messages_Id]' 中
数据库文件:*.mdb
C#代码为:
messagesCount = (int)DBService.Select(GuessBookTableColumns.Messages,GuessBookTableColumns.Messages.Id.Count()).Where(where).ToScalar();
NBearLite生成的cmd.CommandText 为:
"SELECT COUNT([Messages].[Id]) [COUNT_Messages_Id] FROM [Messages]"
此SQL语句在SQL中是可以正确执行的,但是在MsAccess中就必需加入 AS 才能正确执行,即:
"SELECT COUNT([Messages].[Id]) AS [COUNT_Messages_Id] FROM [Messages]"
注:此语句在SQL中也可以执行
我测试的是这样的,如有错误,请指正!
作者:QLeelulu
出处:http://QLeelulu.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利
出处:http://QLeelulu.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利