实在对不起,搞了好久都想不出是什么问题,到很多地方问了也没有回复,只好发首页来,希望高手门指点一下,放一天马上撤。
开发过程中有同时做了Sql server 版本和 access 版本,access版本是用oledb连的,一切都正常,就是当access中某个表字段超过一定数目时,插入和更新该表记录的时候就会报错“INSERT INTO 语句的语法错误。”,但实际上语
句是正确的,同样的表在sql server中无此问题。 插入和更新时是用 参数执行的,
另外同样的表(access),如果我直接执行sql语句没问题, 具体代码可以看附件。
OLEDBDataAccess.cs 用于操作 access 数据库
SQLProcDataAccess.cs 用于操作 Sql server 数据库 (查询部分使用 存储过程,插入,更新,删除和 OLEDB 一样是用sql语句结合参数)
BaseDataAccess.cs 是数据访问的抽象类
望高手指点,搞了很久,实在是搞不懂什么原因。
Thanks in advance!
另:
使用ODBC来连接则没有问题,但是ODBC连接时我插入,更新 "OLE 对象" 的时候就会说
System.Data.Odbc.OdbcException: ERROR [HY104] [Microsoft][ODBC Microsoft
Access Driver]非法的精确度数值
是不是ODBC连接access不支持 "OLE 对象" 啊。
或者用oledb连接的时候有什么参数需要设置才可以支持比较字段比较多的表中用参数。
相同结构的数据库,用MySql数据库的时候,有用到参数的时候也会出错(插入,更新,删除),可否也帮忙看看。(MySqlDataAccess.cs)
附件:http://www.jinxiatong.com/dataaccess.rar
要全套程序可Email或MSN联系我,coolbo824#hotmail.com

浙公网安备 33010602011771号