无法通过ODBCDataAdapter / CommandBuilder更新Progress表

时间:2014-12-12 14:51:59

标签: c# odbc

我在C#中为数据库中的任何单个表创建一个简单的CRUD应用程序,通过ODBC连接与Progress数据库连接。我使用OdbcDataAdapter并附加了OdbcCommandBuilder。

OdbcCommandBuilder似乎永远不会设置我更改的行中的所有值,从而向DataAdapter提供不正确的SQL语句。

例如,在Brown表中,我更改了Name列,但获取了没有设置任何内容的Update SQL:

"UPDATE \"PUB\".\"brown\" WHERE ((\"cust-num\" = ?) AND (\"cust-seq\" = ?))"

在agent-d表中,我更改了Parent-Name列,但获取Update SQL以更改代理编号:

"UPDATE \"PUB\".\"agent-d\" SET \"agent\" = ? WHERE ((\"agent\" = ?) AND (\"parent-num\" = ?) AND (\"cust-num\" = ?))"

为什么我没有从OdbcCommandBuilder获取适当的SQL?

1 个答案:

答案 0 :(得分:0)

发现Progress / OpenEdge DB和ODBC Command Builder不能很好地协同工作,这就是我收到愚蠢的Update语句的原因。