MySQLチュートリアルDMLデータ操作言語の例の詳細な説明

MySQLチュートリアルDMLデータ操作言語の例の詳細な説明

1. データ操作言語 (DML)

データ操作言語の正式名称は Data Manipulation Language で、略称は DML です。 DML には、次の表に示すように、4 つの主な共通関数があります。DML のクエリ関数は、データ アナリストとしてよく使用される操作です。この問題は一度に完全に議論することはできないため、クエリの知識は以降のすべての記事に散りばめられます。今日の記事では、主に追加、削除、変更のスキルの使い方について説明します。

増加消去変化チェック
入れる消去アップデート選択

以下の操作はすべてこの学生テーブルに基づいています。

# データベースを作成します。create database if not exists stu;
# データベースを使用する use stu;
# テーブルを作成する create table student(
    sid int 主キー auto_increment,
    sname varchar(20) が null ではない、
    セックス varchar(10)
)文字セット=utf8;

2. データを追加する(挿入)

ケース 1: すべてのフィールドにデータを追加します。
-- 追加方法は 2 つあります。すべてのフィールドにデータを挿入する場合は、フィールド名を記述する必要はありません。
insert into student(sid,sname,sex) values ​​(1,"张三","男");
生徒の値に挿入します(2、「李璃」、「女」)。

ケース 2: いくつかのフィールドにデータを追加します。
学生(sname)の値に("王五")を挿入します。
insert into student(sname,sex) values ​​("赵六","男");

ケース 3: 一度に複数のデータを挿入する。
学生(sname,sex)の値に挿入 
("劉備","男性"),("貂蝉","女性"),("諸葛亮","男性");

結果は次のとおりです。

ここに画像の説明を挿入

3. 既存のテーブルをコピーして新しいテーブルを生成する

1) 既存のテーブルの構造とデータをコピーします。

「student1 テーブルを作成します。その構造とデータは student テーブルから取得されます。」
mysql> テーブル student1 を作成します。 select * from student;

操作結果は次のとおりです。

ここに画像の説明を挿入

2) 既存のテーブルの構造のみをコピーします (結果は空の構造テーブルになります)。

「student2 テーブルを作成し、内部のデータではなく、student テーブルの構造のみをコピーします。」
mysql> テーブル student2 を作成します。 select * from student where 0;

操作結果は次のとおりです。

ここに画像の説明を挿入

3) 2 に基づいて、空の構造テーブルにデータを挿入します。

「2 に基づいて、student2 テーブルにデータを挿入します。データは student テーブルから取得されます。」
mysql> student2 に挿入します。student から * を選択します。

操作結果は次のとおりです。

ここに画像の説明を挿入

4. データの更新を変更する

update および delete ステートメントは where フィルターと組み合わせて使用​​する必要があります。そうしないと、テーブル全体のレコードが削除されます。

「構文形式: 複数の列はカンマで区切られます」
テーブル名を更新し、列 1 = 値 1 を設定します [列 2 = 値 2、列 3 = 値 3...] where 条件;

「デモ例は以下の通りです」
-- sid が 3 の Wang Wu の名前を Wang Ba に変更します。
学生セット sname="Wang Ba" を更新します。ここで、sid = 3;
-- SID が 7 の諸葛亮の名前を孔明に、性別をタフガイに変更します。
学生セット sname="Kong Ming",sex="Macho" where sid=7 を更新します。

操作結果は次のとおりです。

ここに画像の説明を挿入

5. データ削除:物理的な削除(一度削除すると完全に消えます)。

update および delete ステートメントは where フィルターと組み合わせて使用​​する必要があります。そうしないと、テーブル全体のレコードが削除されます。

「構文形式:」
テーブル名から条件付きで削除します。

「デモ例は以下の通りです」
sname="张三" の学生から削除します。

操作結果は次のとおりです。

ここに画像の説明を挿入

6. 切り捨てと削除の違い

次のデータを使用して、2 つの違いを説明します。

ここに画像の説明を挿入

1) 削除

ここに画像の説明を挿入

2) 切り捨て

ここに画像の説明を挿入

3) 切り捨てと削除の違い

①構造は変更されず、データのみがクリアされます。
② 削除ではリソースは解放されませんが、切り捨てではテーブルが占有しているスペースが解放されます(主キーの増分はリセットされます)
③deleteは行単位で削除します。削除記録はログファイルにトランザクションとして記録され、ロールバックすることができます。 Truncate はテーブル内のすべてのデータを一度に削除します。削除されたレコードはログ ファイルに記録されず、復元できません。削除効率は delete よりも高くなります。

上記は、MySQLチュートリアルDMLデータ操作言語の例の詳細な説明の詳細な内容です。DMLデータ操作言語の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • データベース言語分類DDL、DCL、DMLの詳しい説明
  • MySQL DMLステートメントの使用に関する詳細な説明
  • MySQL学習データベース操作DML初心者向け詳細解説
  • MySQL DML言語操作例
  • MySQL データ操作 - DML ステートメントの使用

<<:  Vueエンジニアがカプセル化しなければならない埋め込み命令の知識のまとめ

>>:  HTML(CSSスタイル仕様)を読む必要があります

推薦する

ネイティブ js で呼び出し、適用、バインドを実装する方法

1. 呼び出しを実装するステップ:関数をオブジェクトのプロパティとして設定します。これを関数に割り当...

React.cloneElement の使い方の詳しい説明

目次cloneElementの役割使用シナリオ新しい小道具を追加するプロップを変更するイベントカスタ...

Docker コンテナのデプロイの試み - マルチコンテナ通信 (node+mongoDB+nginx)

その理由はモッカー プラットフォームを導入したかったので、友人の勧めで既成のプロジェクト api-m...

Mysql binlog ログファイルが大きすぎる場合の解決策

目次1. 関連するbinlog設定2. binlogに関する詳細設定2.1 バイナリログモードの変更...

CSS ハート型読み込みアニメーションのソースコードの実装

さっそく、コードをお見せしましょう。コードは非常にシンプルなので、勉強すれば理解できるようになります...

既存のMySQLデータベースの文字セットを統一する方法

序文データベースでは、一部のデータ テーブルとデータは latin1 であり、一部のデータ テーブル...

CSS 標準: vertical-align プロパティ

<br />原文: http://www.mikkolee.com/13私は最近、ver...

docker mysqlの起動時に初期化SQLを実行する

1.Mysqlイメージを取得するdocker pull mysql:5.7 2. MySQLイメージ...

MySQLデータベースがNULLを可能な限り避ける理由

MySQL の多くのテーブルには、NULL が列のデフォルト属性であるため、アプリケーションが NU...

JavaScript es6 の新しい配列メソッドの詳細な説明

目次1. 各() 2. arr.filter() 3. arr.every() 4. arr.map...

Google 翻訳ツール: 多言語ウェブサイトを素早く実装

Google Chinaは、ウェブサイトやブログを素早く簡単に多言語化できる翻訳ツールをリリースした...

nginx がドメイン名アクセス用に設定されている場合にドメイン名の後に 2 つのスラッシュ // が表示される問題の解決方法

最近、個人のウェブサイトを書き直しました。Alibaba Cloudで新しいサーバーを購入しました。...

nginx をコンパイルしてインストールした後、スムーズに nginx をアップグレードする方法

nginx をコンパイルしてインストールし、一定期間使用した後、現在のバージョンに脆弱性があることや...

親子コンポーネントの通信を解決するための3つのVueスロット

目次序文環境の準備カテゴリコンポーネントアプリのコンポーネント1. デフォルトスロット2. 名前付き...

CSS3 Flex エラスティックレイアウトのサンプルコードの詳細な説明

1. 基本概念 //任意のコンテナを Flex レイアウトとして指定できます。 。箱{ ディスプレイ...