你能用ADO.NET SQLCommandBuilder和复合键吗?

时间:2008-10-14 15:04:49

标签: ado.net sqlclient sqlcommandbuilder

我有一个包含6列的数据库表。主键是由6列中的5列组成的复合键

我正在尝试使用SqlClient.SqlCommandBuilder.GetDeleteCommand删除该行。

但是我收到以下错误:

  

“System.InvalidOperationException:动态SQL生成   对于没有的SelectCommand,不支持DeleteCommand   返回任何关键列信息。“

SelectCommmand包含表格中的所有列:

SELECT  TABLENAME.COL1, TABLENAME.COL2, TABLENAME.COL3, 
        TABLENAME.COL4, TABLENAME.COL5, TABLENAME.COL6
FROM TABLENAME  

问题可能是复合键吗?

1 个答案:

答案 0 :(得分:1)

我认为您的问题不是复合键。根据文档,主键不必是单个列。但是,自动生成语句还需要其他限制。尝试阅读this document以确认您没有遗漏任何内容。