在我的一个应用程序中,我正在使用Delphi7,Sql server2008ODBC,R2,BDE,我使用Sql server本地客户端驱动程序通过odbc连接数据库。
Insert总是可以工作,但有些地方编辑失败,Delphi引发EDBEngineError原生客户端10.0字符串数据长度不匹配。
我在表格中有4个文本字段(sql数据类型文本),如果我注释这些字段行,编辑工作。
有谁能帮我解决这个问题吗?
我知道BDE已经贬值了,但这是数据库迁移。这是一个很大的应用程序,所以我不想改变BDE。除上述情况外,一切都运行正常。
为我糟糕的英语找借口
发布于 2013-01-25 22:27:24
我担心BDE是这里的原因。BDE从来没有设计为与SQL Server2008或更高版本一起使用。我们最近在informix中遇到了类似的问题(访问冲突也与错误的字符串长度有关)。
要真正确定BDE是否是问题所在,可以捕获获取字符串长度错误的SQL语句,并使用ODBC驱动程序直接执行相同的SQL,而不使用中间的BDE层(例如,从通过ODBC连接的某个SQL编辑器)。我打赌你不会再有这个问题了。
https://stackoverflow.com/questions/14516436
复制相似问题