2714: There is already an object named in the database(同名のオブジェクトがすでに存在する)
SQL Server意味
作成しようとしたものと同じ名前のオブジェクト (テーブル、ビュー、プロシージャなど) がデータベースにすでに存在する。名前の衝突により CREATE 文が失敗した。
原因
同じ CREATE スクリプトの 2 回目の実行、既存オブジェクトを先に削除していない、異なるスキーマの想定、冪等でないデプロイ/マイグレーションスクリプト、または命名の衝突。
対処方法
先にオブジェクトの存在を確認する: IF OBJECT_ID('dbo.Name') IS NULL で条件付きで作成するか、CREATE OR ALTER を使う (プロシージャ/ビュー/関数の場合)。必要なら既存オブジェクトを DROP して作り直す。マイグレーションスクリプトは冪等に記述する。正しいスキーマ/データベースで作業していることを確認する。
同じデータベースの他の項目
- 2812Could not find stored procedure(ストアドプロシージャが見つからない)
- 8623The query processor ran out of internal resources and could not produce a query plan(クエリプロセッサの内部リソース不足で実行計画を生成できない)
- 4104The multi-part identifier could not be bound(マルチパート識別子をバインドできない)
- 601Could not continue scan with NOLOCK due to data movement(データ移動のため NOLOCK でのスキャンを続行できない)
- 50000RAISERROR で発生させたカスタムエラー
- 3902The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION(COMMIT に対応する BEGIN TRANSACTION がない)
- 1101Could not allocate a new page because of insufficient disk space in filegroup(ファイルグループのディスク容量不足により新しいページを割り当てられない)