如果你的数据库的表的设计包含了Access包含的关键字(常用的System,master,admin,user,useres,userid,Money等),则在插入更新的时候会出现“语法错误”

例如:update Ans_NaireText set text ='123456 ' where userid=19 and naireid=13 执行遇见语法错误text解决办法,将text用[]括起来,如下:

         update Ans_NaireText set [text] ='123456 ' where userid=19 and naireid=13
例如:
string sqlText = String.Format("Insert into TestTable(Id,Order) values ({0},{1})",123,0);
这行上面这条语句是失败的,原因是TestTable表中有一个关键字"Order",解决办法:
(1).将语句中的关键字用[order]处理就可以了。如:
string sqlText = String.Format("Insert into TestTable(TestId,[Order]) values ({0},{1})",123,0);
 (2).将所有的字段都用[]括起来,或者在前面加上表名,这在许多代码生成器中都采用这种方式来解决关键字的冲突问题。如:
string sqlText = String.Format("Insert into TestTable([Id],[Order]) values ({0},{1})",123,0);
(3).在设计数据库的时候尽量避免使用Access本身的保留字。这样就不会出现应为关键字问题引起的错误了,这也是最佳的解决方法。

 posted on 2011-08-17 10:07  纳米程序员  阅读(413)  评论(1编辑  收藏  举报