6

6列のデータベーステーブルがあります。主キーは、6 つの列のうち 5 つの列で構成される複合キーです。

SqlClient.SqlCommandBuilder.GetDeleteCommandを使用して行を削除しようとしています。

ただし、次のエラーが発生します。

「System.InvalidOperationException : DeleteCommand の動的 SQL 生成は、キー列情報を返さない SelectCommand に対してサポートされていません。」

には、テーブル内のSelectCommmandすべての列が含まれています。

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

問題は複合キーでしょうか?

4

1 に答える 1

1

あなたの問題は複合キーではないと思います。ドキュメントによると、主キーは単一の列である必要はありません。ただし、ステートメントを自動的に生成するために必要な制限は他にもあります。このドキュメントを読んで、見落としがないことを確認してください。

于 2008-10-14T15:15:24.670 に答える