0

高度なクエリを使用して削除クエリを作成しようとしています。ただし、事前にクエリを作成する方法はありませんが、まだ試してみましたが、エラーが発生しています。

「EnvelopeHeader」エンティティからすべてのデータを削除したいだけです。

次のエラーが発生しました

4

3 に答える 3

1

このバージョンの SQL には詳しくありません。ただし、私の勘では、select ステートメント全体を 2 つの丸かっこで囲む必要があります。おそらく、select ステートメントには 1 つの列のみを含める必要があります。

このようなもの

DELETE FROM table
WHERE ID IN
( select EH_id FROM some_other_table)
于 2015-09-26T00:53:03.980 に答える
1

使用している場合

DELETE FROM table
WHERE table.column IN (...)

つまり、内部クエリは、table.column と同じ型の値のリストを返す必要があります。

あなたの場合、内部クエリ:

  1. 多数の列を選択しており、1 つだけを選択する必要があります
  2. 複数の列を選択する場合、選択する列をコンマで区切る必要があります col1、col2
  3. 内部クエリの FROM ステートメントを指定する必要があります

それは次のようなものでなければなりません

DELETE FROM {table}
WHERE {table}.[column] in
(SELECT {table}.[column] FROM {table} WHERE <condition>)

また、パラメーターを使用したい場合は、 @param_name を使用してそれらを参照できることを忘れないでください

于 2015-09-27T21:09:23.797 に答える
0

そのエンティティのすべてのレコードを削除する場合は、単に使用します

DELETE * FROM {EnvelopeHeader}

于 2015-09-28T07:48:00.947 に答える