SQL SERVER IDENTITY_INSERT OFF

PC

SQLServerで、テーブルにデータを挿入する際のお話です。

ふつう、IDにした列は自動で採番されるので、そこに自分で決めた数字を使ってデータを挿入することってできませんよね。
たとえ、それらがいずれも、その挿入するデータの中で一意の数字になっていたり、既存のデータを加味しても一意になっている、というケースでも。

こんな感じに無理やりデータを入れようとすると、

INSERT INTO z_T_ID_Btn
(ID_Btn, Color)
VALUES
(6, 'gold')

こんなメッセージが。

メッセージ 544、レベル 16、状態 1、行 1
IDENTITY_INSERT が OFF に設定されているときは、テーブル ‘z_T_ID_Btn’ の ID 列に明示的な値を挿入できません。

結構丁寧に、エラー文を排出してくれているので、対策もわかっちゃうのですが・・・。
はい。
IDENTITY_INSERT を ON にしてやればいいんですね。

SET IDENTITY_INSERT z_T_ID_Btn ON;

INSERT INTO z_T_ID_Btn
(ID_Btn, Color)
VALUES
(6, 'gold')

SET IDENTITY_INSERT z_T_ID_Btn OFF;

そのままにしておくと面倒なことが起きるので、その作業が終わったら OFF にしておくことをお勧めします。

一点注意すべき点があるとすれば、この作業の後、自動採番は、このID列のなかの一番大きな数字の次の数から始まります。

ガードを下げさせて半ば強引にデータを挿入させるような感じになるので、多用することは無いと思いますが、出先のDBのテーブルのデータをごそっと塗り替えたいケースとか、あるにはあるので。

SQL SERVER本

SQL Server 2016の教科書 基礎から実践まで学べる [ 松本美穂 ]
SQL Server 2016の教科書 基礎から実践まで学べる [ 松本美穂 ] 3,960円(税込)【送料込】

楽天ブックス

基礎から実践まで学べる 松本美穂 松本崇博 ソシムエスキューエル サーバー ニセン ジュウロク ノ キョウカショ マツモト,ミホ マツモト,タカヒロ 発行年月:2016年08月 予約締切日:2016年

SQL Server 2016の教科書 基礎から実践まで学べる 開発編 松本美穂/著 松本崇博/著
SQL Server 2016の教科書 基礎から実践まで学べる 開発編 松本美穂/著 松本崇博/著 3,960円(税込)【送料込】

ドラマ 本と中古ゲームの販売買取

■ISBN:9784802610629★日時指定・銀行振込をお受けできない商品になりますタイトル【新品】【本】SQL Server 2016の教科書 基礎から実践まで学べる 開発編 松本美穂/著 松本

現場で使えるSQL第2版 Oracle 10 g・SQL Server 20 (DB magazine selection) [ 小野哲 ]
現場で使えるSQL第2版 Oracle 10 g・SQL Server 20 (DB magazine selection) [ 小野哲 ] 2,420円(税込)【送料込】

楽天ブックス

Oracle 10 g・SQL Server 20 DB magazine selection 小野哲 藤本亮 翔泳社ゲンバ デ ツカエル エスキューエル オノ,サトシ フジモト,リョウ 発行年月:2

やさしいT-SQL入門 SQL Server使いの第一歩 (DB selection) [ 石橋潤一 ]
やさしいT-SQL入門 SQL Server使いの第一歩 (DB selection) [ 石橋潤一 ] 2,420円(税込)【送料込】

楽天ブックス

SQL Server使いの第一歩 DB selection 石橋潤一 横山弘典 翔泳社ヤサシイ ティー エスキューエル ニュウモン イシバシ,ジュンイチ ヨコヤマ,ヒロノリ 発行年月:2008年07月

SQL Server 2005ストアドプロシージャプログラミング (SQL Server books) [ デヤン・サンデリック ]
SQL Server 2005ストアドプロシージャプログラミング (SQL Server books) [ デヤン・サンデリック ] 6,380円(税込)【送料込】

楽天ブックス

SQL Server books デヤン・サンデリック トップスタジオ 翔泳社エスキューエル サーバー ニセン ゴ ストアド プロシージャ プログラミンク サンデリック,デヤン トップ スタジオ 発行

楽天ウェブサービスセンター
タイトルとURLをコピーしました