SQL 挿入文の書き方の説明

SQL 挿入文の書き方の説明

方法 1: INSERT INTO t1(field1,field2) VALUE(v001,v002);

明示的に1つの値のみを挿入する

方法 2: INSERT INTO t1(field1,field2) VALUES(v101,v102),(v201,v202),(v301,v302),(v401,v402);

バッチデータを挿入する場合、方法 2 は方法 1 よりも優れています。

[特記事項] id が自動インクリメント、つまり id INT PRIMARY KEY AUTO_INCREMENT の場合、挿入ステートメントを実行するときに、id 以外のすべてのフィールドをリストする必要があります (不便に感じますか? MySQL がこの状況をマークする簡単な方法を提供してくれることを願っています。これは、初期のデータをテストするときによく使用されるため、id 以外のすべてのフィールドをリストするのは本当に面倒です)。

方法 3.1、INSERT INTO t2(field1,field2) SELECT colm1,colm2 FROM t1 WHERE ...

簡単に紹介します。talbe2 に挿入する列を指定し、比較的複雑なクエリ ステートメントを通じてデータ ソースを取得できるため、より柔軟に使用できる可能性があります。ただし、対象テーブルの列を指定するときは、空でない列をすべて入力する必要があることにも注意する必要があります。そうしないと、データ挿入ができなくなります。エラーが発生しやすいもう 1 つのポイントは、次の省略形式で記述する場合です。

方法 3.2: INSERT INTO t2 SELECT colm1,colm2,…… FROM t1

この時、対象テーブルの列を省略すると、デフォルトで対象テーブルのすべての列にデータが挿入され、正しいデータ挿入を完了するには、SELECT 後の列の順序が対象テーブルの列の定義順序と完全に一致している必要があります。これは見落としがちな点であり、注意が必要です。

[特記事項] 挿入操作では、テーブル t1 と t2 のすべてのフィールドの [データ型] を順番に大まかにチェックするだけなので、[フィールド名] はチェックされません。これは諸刃の剣であり、利便性を提供する一方で、不注意によるリスクの可能性も伴います。使用時には順番の確認が必要になりますので、[方法3.1]または[方法4]の使用を推奨します。

方法 4: INSERT INTO テーブル名 SET 列名 1 = 列値 1、列名 2 = 列値 2、...;

ただし、INSERT INTO SET を使用すると、データを一括で追加することはできません。 (参考:MySQLデータベースにデータを挿入する利点 INSERT INTO SET)

SQL 挿入ステートメントの書き方に関するこの記事はこれで終わりです。SQL 挿入ステートメントのより関連性の高い内容については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQLに挿入する前にデータが存在するかどうかを確認する方法
  • MySQL でレコードが存在しない場合に挿入し、存在する場合に更新する方法を実装する方法
  • MySQL の挿入ステートメントの使用実体験
  • 挿入前にレコードが既に存在するかどうかを確認するには、SQL ステートメントを使用します。

<<:  HTML+CSSを使用してTG-visionホームページを作成する方法

>>:  Reactベースのコンポーネントのカプセル化の実装手順

推薦する

Tomcat サーバーの設定と Web プロジェクトの公開に関する IDEA グラフィック チュートリアル

1. Webプロジェクトを作成したら、Tomcatを例にサーバーを構成する必要があります。 2. 実...

vue3のテレポート瞬間移動機能の使い方を詳しく解説

vue3テレポート瞬間移動機能の使用は参考用です。具体的な内容は次のとおりです。テレポートは通常、瞬...

Web プロジェクト開発における 2 つのトークン理由とサンプル コードの分析

目次質問:プロジェクトには 2 つのトークンがあり、1 つは有効期間が 2 時間 (ショート トーク...

スライドドアを実装するための CSS サンプルコード

いわゆるスライディングドアテクノロジーとは、さまざまな長さのテキストに合わせてボックスの背景を自動的...

Ubuntu 18.04 に VMware Tools をインストールする際のエラーを解決する

1. オンライン チュートリアルによると、Ubuntu 18.04 のインストールはまだ失敗します。...

Docker イメージのエクスポート、インポート、コピーの例の分析

最初の解決策は、イメージを公開イメージリポジトリにプッシュし、それをプルダウンすることです。 2 番...

CSSフロートの特性についての簡単な説明

この記事では、CSS フロートの特徴を紹介します。皆さんと共有し、自分用のメモとして残したいと思いま...

HTML テーブル マークアップ チュートリアル (30): セルの暗い境界線の色属性 BORDERCOLORDARK

セルでは、暗い境界線の色を個別に定義できます。基本的な構文<TD ボーダーコロダーク=colo...

Dockerを使用してPythonランタイム環境の基本イメージを作成する方法

1. 準備1.1 Pythonインストールパッケージをダウンロードします(注:Pythonバージョン...

Mysqlのインポートとエクスポート時に発生する問題の解決

背景すべての業務を Docker の運用管理に移行してから、一連の落とし穴に遭遇しましたが、今回は ...

Vueタイマーの実装方法

この記事では、参考までにタイマーを実装するためのVueの具体的なコードを紹介します。具体的な内容は次...

MySQL の最適化: 高品質の SQL 文を書く方法

序文インターネット上にはデータベースの最適化に関する情報や方法が数多くありますが、その多くは品質にば...

Mysqlクエリ条件で文字列の末尾にスペースがあっても一致しない問題の詳細な説明

1. テーブル構造テーブル人id名前1あなた2あなた(スペース) 3あなた(スペース2つ) 2. ク...

MySql の集計関数に条件式を追加する方法

MySQL のフィルタリングのタイミングは、集計関数で使用される where 条件と having ...

Vueリストレンダリングキーの原理と機能の詳細な説明

目次リストレンダリングキーの原理と機能主要原則の分析キーの役割要約するリストレンダリングキーの原理と...