MySQLデータの挿入、更新、削除の詳細

MySQLデータの挿入、更新、削除の詳細

1. 挿入

顧客に挿入(
顧客.顧客住所、
顧客.cust_city、
顧客.cust_state、
顧客.cust_zip、
顧客.顧客国、
顧客.cust_contact、
顧客.cust_email
)
VALUES('zhangsan','good','111','ca','dasdsa','usa',NULL)

この方法で挿入は成功します。

安全上の理由から、挿入するたびに列名を記述する必要があります。どのINSERT構文を使用するかに関係なく、正しい数のVALUESを指定する必要があります。列名を指定しない場合は、各テーブル列に値を指定する必要があります。列名が指定されている場合は、リストされている各列に値を指定する必要があります。これを行わないと、エラー メッセージが生成され、行は正常に挿入されません。

列の省略 テーブル定義で許可されている場合は、INSERT 操作で特定の列を省略できます。

省略された列は、以下の条件のいずれかを満たす必要があります。

  • 列は NULL 値 (値なしまたは空の値) を許可するように定義されています。
  • テーブル定義にデフォルト値を指定します。つまり、値が指定されていない場合はデフォルト値が使用されることになります。

全体的なパフォーマンスの向上 データベースは複数のクライアントからアクセスされることが多く、どのリクエストがどのような順序で処理されるかを管理するのはMySQLの役割です。

INSERT操作は時間がかかる可能性があり (特に更新が必要なインデックスが多数ある場合)、保留中のSELECTステートメントのパフォーマンスが低下する可能性があります。

データの取得が最も重要である場合 (通常はそうである)、 INSEINTOの間にキーワードLOW_PRIORITY追加することで、 MySQL INSERTステートメントの優先度を下げるように指示できます。

顧客に挿入(
顧客.顧客住所、
顧客.cust_city、
顧客.cust_state、
顧客.cust_zip、
顧客.顧客国、
顧客.cust_contact、
顧客.cust_email
)
VALUES('zhangsan','good','111','ca','dasdsa','usa',NULL)
,('zhangsan','good','111','ca','dasdsa','usa',NULL)
,('zhangsan','good','111','ca','dasdsa','usa',NULL)
,('zhangsan','good','111','ca','dasdsa','usa',NULL)

複数の行を挿入したい場合は、複数のvaluesを追加するだけです。

INSERTは通常、指定された列値を持つ行をテーブルに挿入するために使用されます。ただし、 SELECTステートメントの結果をテーブルに挿入するために使用できる別の形式のINSERTがあります。

これはINSERT SELECTと呼ばれ、名前が示すように、 INSERTステートメントとSELECTステートメントで構成されます。

別のテーブルの顧客リストをcustomersテーブルにマージするとします。毎回行を読み取ってINSERTで挿入する代わりに、次のように実行できます。

customers(xx,xx,xx) に挿入します
xx,xx,xxを選択
新規顧客から

それはそれくらいです。

INSERT SELECTの列名 簡潔にするために、この例ではINSERTSELECTステートメントの両方で同じ列名を使用します。

ただし、列名は必ずしも一致する必要はありません。実際、 MySQL SELECTが返す列名を気にしません。

列の位置を使用するので、 SELECTの最初の列(名前に関係なく)がデータ入力に使用されます。

テーブル列で指定された最初の列は、テーブル列で指定された 2 番目の列にデータを入力するために使用されます。

これは、異なる列名を使用するテーブルからデータをインポートする場合に便利です。

2. 更新

テーブル内のデータを更新 (変更) するには、 UPDATEステートメントを使用します。

UPDATEを使用するには 2 つの方法があります。

  • テーブル内の特定の行を更新します。
  • テーブル内のすべての行を更新します。
顧客の更新
cust_email = '[email protected]' を設定します
ここで、cust_id = 10005;


これは上記の更新ステートメントです。

複数の列を更新する場合:

顧客の更新
cust_email = '[email protected]' を設定します。
cust_name = 'ゲーム'
ここで、cust_id = 10005;

IGNOREキーワードUPDATEステートメントを使用して複数の行を更新し、これらの行の 1 つ以上を更新中にエラーが発生した場合、UPDATE 操作全体がキャンセルされます (エラーが発生する前に更新されたすべての行は元の値に復元されます)。

エラーが発生しても更新を続行するには、次のようにIGNOREキーワードを使用します: UPDATE IGNORE customers…

これを説明すると、1 行のみを更新することが確実な場合は、 update 1モードを使用して、1 行のみを更新することを示すことをお勧めします。

テーブルからデータを削除 (除去) するには、 DELETEステートメントを使用します。 DELETE次の 2 つの方法で使用できます。

3. 削除

  • テーブルから特定の行を削除します。
  • テーブルからすべての行を削除します。

テーブルではなくテーブルの内容を削除します。DELETE DELETEは、テーブルから行を削除したり、テーブル内のすべての行を削除したりします。ただし、 DELETEテーブル自体は削除されません。

より高速な削除 テーブルからすべての行を削除する場合は、 DELETE使用しないでください。

TRUNCATE TABLEステートメントを使用することもできます。このステートメントは、同じ処理をより高速に実行します ( TRUNCATE 、テーブル内のデータを行ごとに削除するのではなく、実際に元のテーブルを削除して再作成します)。

MySQL データの挿入、更新、削除の詳細に関するこの記事はこれで終わりです。MySQL データの挿入、更新、削除に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL データベースの Python 接続、クエリ、更新、削除操作の例
  • MySQL 入門 (IV) テーブルへのデータの挿入、更新、削除
  • JDBC は MySql データベースのステップに接続し、クエリ、挿入、削除、更新などを実行します。
  • MySQL で外部キーを使用してカスケード削除と更新を実装する方法
  • MySQL 学習体験: レコードの挿入、更新、削除
  • MySql の削除および更新操作はパフォーマンスに影響しますか?
  • MySQL 更新、削除操作の共有

<<:  DIV と画像の水平および垂直の中央揃えは複数のブラウザと互換性があります

>>:  CSS 線形グラデーション凹型長方形遷移効果の実装

推薦する

Vueは複数列レイアウトドラッグを実装します

この記事では、マルチカラムレイアウトドラッグを実装するためのVueの具体的なコードを参考までに共有し...

Linux 上の Vim で色とテーマを変更する方法

Vim は Linux でよく使用されるテキスト エディターです。 Vim は、Sublime や ...

Bash スクリプトでの配列メソッドの作成と使用の概要

Bashで配列を定義するbash スクリプトで新しい配列を作成する方法は 2 つあります。 1 つ目...

Mysql5.7 サービスを開始できません。グラフィカル ソリューション チュートリアル

p>「サービス」で手動で起動すると、 コンソールから起動します: 次に、...\MySQL S...

MySQL の冗長インデックスと重複インデックスの詳細な説明

MySQL では、同じ列に複数のインデックスを作成できます。意図的であるかどうかにかかわらず、MyS...

nginx のロケーションで URI の傍受を実装する方法

例:場所のルートとエイリアスルートディレクティブは、ルートによって設定されたディレクトリに検索ルート...

ジョセフリング問題を解決する 3 つの JavaScript メソッド

目次概要問題の説明循環リンクリスト順序付き配列数学的再帰要約する概要ジョセフ・リング問題は、ジョセフ...

json.stringify() と json.parse() の違いと使い方

1. JSON.stringify() と JSON.parse() の違い私たちは皆、JSON.s...

Tomcat で server.xml と content.xml を変更した後の自動復元の問題の解決方法

設定ファイルを server.xml と content.xml に書き込みます。サーバーを再起動す...

LinuxにComposerをインストールする方法

1. インストールスクリプト(composer-setup.php)を現在のディレクトリにダウンロー...

Nginx の break と last の違いの詳細な分析

まずは違いについて話しましょう最後に、書き換えられたルールは、次の場所と一致させるために書き換えられ...

mysql8.0.19 winx64バージョンのインストール問題を解決する

MySQL は、スウェーデンの会社 MySQL AB によって開発されたオープンソースの小規模なリレ...

ウェブページのグリッドデザインを考える

<br />元のアドレス: http://andymao.com/andy/post/8...

意外と知らないLinuxのSSHコマンドの使い方7選を徹底解説

システム管理者は複数のサーバーを同時に管理する場合があり、これらのサーバーは異なる場所に配置されてい...

ハードコーディングに別れを告げ、フロントエンドテーブルがインスタンスコードを自動的に計算できるようにします。

序文私のチームが税制モジュールを開発していたとき、計算問題、特にグリッド内の計算を解決するために時間...