INSERT_(SQL)とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > INSERT_(SQL)の意味・解説 

INSERT (SQL)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/02 16:40 UTC 版)

ナビゲーションに移動 検索に移動

INSERT(インサート)ステートメントは、を追加する、コンピュータデータベース言語 SQL におけるデータ操作言語(DML)ステートメントの1つである。1度に1行を追加するだけではなく、問い合わせの結果としての複数行を追加することもできる。なお、ユーザーはそのテーブル(関係)に対してINSERT権限を持っている必要がある。また、WHERE句で指定したテーブル全てに対してSELECT権限を持っている必要がある。

構文

値の挿入

INSERT INTO テーブル名 [ (列名1 [ ,列名2・・・]) ]
  VALUES (A1 [, A2 ...]) [, (B1 [, B2 ...]) ...];

の数と値の数は一致している必要がある。指定のない列についてはデフォルト値(テーブル作成時にDEFAULT句で指定された値)またはNULLが使われる。列の順番は任意である。列の指定が無い場合、テーブル作成時の列順を利用してすべての列を指定したと扱われる。

設定した値あるいは未設定時の値(デフォルト値またはNULL)は、その列またはテーブルに適用される制約(主キー制約一意性制約参照整合性制約CHECK制約NOT NULL制約など)を満たさなければならない。文法エラーまたは制約違反があれば行追加は失敗する。

VALUES に続けて複数の行値を指定することにより、複数の行を一括で挿入することができる。INSERT を複数回実行するのと結果は変わらないが、データベース製品によっては処理の効率が高まる場合がある。

INSERT INTO phone_book (name, number) VALUES ('John Doe', '555-1212');
INSERT INTO phone_book (name, sex) VALUES ('Nancy', 'Woman'),('Tom', 'Man'),('Cathy','Woman');

問い合わせ結果の挿入

INSERT INTO テーブル名1 SELECT * FROM テーブル名2 WHERE 条件式;

テーブル2に対するSELECTステートメントでの問い合わせの結果をテーブル1に追加する。

INSERT INTO phone_book2 SELECT * FROM phone_book WHERE NAME IN ('John Doe', 'Peter Doe');

採番キーの見つけ方

データベースシステムが自動採番した連番等の人工キーを主キーとして利用する場合、他のSQLステートメントから、その追加対象のテーブルを利用するために、自動採番された主キーを見つける必要があるが、その方法には以下のようなものがある。

  • 特別なストアドプロシージャを使用する
  • 一時テーブルに最後に追加した行をSELECTステートメントで検索する
  • INSERTステートメントにおける一意な要素の組み合わせを、SELECTステートメントでの検索に使用する
  • INSERTステートメントでGUIDを使用し、 SELECT ステートメントでそれをキーに検索する



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「INSERT_(SQL)」の関連用語

INSERT_(SQL)のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



INSERT_(SQL)のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのINSERT (SQL) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS