問題:
データを入力しようとしています既存のテーブル dbo.TableTwo と別のテーブル dbo.TableOne のデータを SELECT ...ストアド プロシージャ内の INTO ... ステートメント。ただし、dbo.TableTwo がすでに存在するため、エラーが発生します。
解決策:
SELECT ... INTO ... ステートメントは、既存のテーブルにデータを挿入するのではなく、新しいテーブルを作成します。 dbo.TableOne から dbo.TableTwo に複数の行を挿入するには、次のように INSERT ステートメントを使用します。
INSERT INTO dbo.TableTwo SELECT col1, col2 FROM dbo.TableOne WHERE col3 LIKE @search_key
説明:
INSERT INTO ステートメントは、次のように指定します。新しい行が追加される宛先テーブル dbo.TableTwo。 SELECT 句は、指定された列、col1 とcol2 のみを含むデータを dbo.TableOne から取得します。 WHERE 句は、col3 が @search_key パラメータに格納されている値と一致する行にデータを制限します。
注:
dbo.TableTwo にすでに 3 つ以上の列がある場合の場合は、以下に示すように、INSERT ステートメントで列名を明示的に指定する必要があります:
INSERT INTO dbo.TableTwo (col1, col2) SELECT col1, col2 FROM dbo.TableOne WHERE col3 LIKE @search_key
以上がSQL Server で 1 つのテーブルから別の既存のテーブルに行を挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。