2013-01-25 89 views
1

在我的一个应用程序中使用Delphi 7,Sql server 2008 R2,BDE, 我使用bde连接数据库,通过odbc使用Sql server本机客户端驱动程序。字符串数据长度不匹配delphi + sql server 2008

插入总是工作,但有些位置编辑failled, 德尔福提高EDBEngineError [SQL本机客户端10.0]字符串数据长度不匹配。

我有4个文本字段(sql数据类型文本)在表中,如果我评论这些字段线编辑工程。

请有人帮忙解决这个问题吗?

我知道BDE是贬值的,但这是数据库迁移。这是大型应用程序,所以我不想从BDE更改。除了上述情况,一切正常。

[借口,我的英语不好]

回答

0

恐怕BDE是这里的原因。 BDE从来没有设计用于SQL Server 2008或更高版本。我们最近在informix中遇到了类似的问题(访问冲突也与错误的字符串长度有关)。

如果BDE出现问题,可以采取什么措施捕获获取字符串长度错误的sql语句,并且直接使用ODBC驱动程序执行相同的SQL,而不需要介于两者之间的BDE层例如来自通过ODBC连接的某个SQL编辑器)。我敢打赌你不会再遇到问题了。

+1

问题只出现在一张表中,没有BDE我什么也做不了,那4个字段只给出问题。否则我会单独使用更新查询这些字段。我会尝试自己并回来。 – bejarun

+0

@bejarun我很好奇:你有没有得到它的工作? –