MySQL の DDL と DML についての簡単な説明

MySQL の DDL と DML についての簡単な説明

序文

前回の記事では、MySQL について学び、MySQL クエリ ステートメントの使用方法を理解しました。

クエリによるデータ操作の追加、削除、クエリ、変更についてはすでに紹介しました。この記事では、データベースとテーブルの残りの追加、削除、変更、および作成、削除、変更などの一般的な操作を紹介します。

1. DDL

DDL とは何ですか? と疑問に思う読者もいるかもしれません。ここでブロガーは、DDL の正式名称は Data Define Languge であると簡単に紹介しています。英語からこれをデータ定義言語に簡単に翻訳すると、ライブラリやテーブルの作成、変更、削除に使用されます。

1.1 データベース操作

1.1.1 データベースの作成と使用

#データベースを作成する CREATE DATABASE database name;
 
#データベースを作成します。まずデータベースが存在するかどうかを確認してから作成します。CREATE DATABASE IF NOT EXISTS database name;
 
#データベースを作成し、文字セットを指定します。CREATE DATABASE database name CHARACTER SET character set;
 
#データベースを使用する USE データベース名;

1.1.2 データベースのクエリ

#すべてのデータベースの名前を照会する SHOW DATABASES;
 
#データベースの文字セットを照会します: データベースの作成ステートメントを照会します SHOW CREATE DATABASE database name;
 
#使用されているデータベースの名前を照会する SELECT DATABASE();

1.1.3 データベースの文字セットを変更する

#データベースの文字セットを変更します。ALTER DATABASE データベース ライブラリ名 CHARACTER SET 文字セット名;

1.1.4 データベースの削除

#データベースを削除します。DROP DATABASE database name;
 
#データベースが存在するかどうかを判断し、削除します。DROP DATABASE IF EXISTS データベース名;

1.2 データテーブルの操作

1.2.1 データテーブルを作成する

#データテーブルを作成する CREATE TABLE テーブル名 (
	列1のデータ型[制約]、
	列2のデータ型[制約]、
	...
	列n データ型[制約]	
);

: 最後の文にはカンマは必要ありません。

1.2.2 クエリデータテーブル

#現在のデータベース内のすべてのテーブルをクエリする SHOW TABLES;
 
#データベース内のすべてのテーブルをクエリする SHOW TABLES FROM database name;
 
#クエリ テーブル構造 DESC テーブル名;

1.2.3 データテーブルを変更する

#テーブル名を変更する ALTER TABLE テーブル名 RENAME TO 新しいテーブル名;
 
#テーブルの文字セットを変更します ALTER TABLE テーブル名 CHARACTER SET 文字セット;
 
#列を追加します ALTER TABLE テーブル名 ADD 列名 データ型;
 
#列名とデータ型を変更する ALTER TABLE テーブル名 CHANGE 列名 新しい列タイプ 新しいデータ型;
ALTER TABLE テーブル名 MODIFY 列名 新しいデータ型;
 
#列を削除する ALTER TABLE テーブル名 DROP 列名;

1.2.4 データテーブルの削除

#データ テーブルを削除します DROP TABLE data table;
 
#まずデータ テーブルが存在するかどうかを確認し、次に DROP TABLE IF EXISTS データ テーブルを削除します。

実際、データベースとデータ テーブルを操作するキーワードは同じですが、操作がデータベースに対して行われるのか、データ テーブルに対して行われるのかが後に示される点が異なります。データベースを操作する場合は、データベースを追加します。データ テーブルを操作する場合は、テーブルを追加します。

1.3 一般的なデータ型

1.4 制約

概念: データの正確性、有効性、完全性を確保するために、テーブル内のデータを制限します。

​​​​​​​​ ​​​​​​​

1.5 アイデンティティ列

自動増分

フィールドの後にauto_incrementを追加します

2. DMLD

DDL を紹介した後は、DML について見てみましょう。DML の正式名称は Data Manipulate Language で、文字通りにはデータ処理言語とも訳されます。DML は、データベース レコードの追加、削除、変更、およびデータの整合性のチェックに使用されます。

2.1 データを追加する

#データを追加します INSERT INTO テーブル名 (列名 1,...) VALUES (値 1,...);
 
INSERT INTO テーブル名 SET 列名 1 = 値 1、...、列名 n = 値 n;

データを追加するときは、次の点に注意してください:

1. 列名と値は1対1に対応している必要があります。

2. 列の数と値は一貫している必要があります。

3. 列名を省略した場合は、デフォルトですべての列に値が追加されます。

2.2 データの変更

# 単一テーブルデータの変更 UPDATE テーブル名 SET 列名 1 = 値 1、...、列名 n = 値 n [WHERE フィルタ条件];
 
# 複数テーブルのデータを変更する UPDATE テーブル 1 エイリアス、テーブル 2 エイリアス SET フィールド = 新しい値、...、WHERE 接続条件 AND フィルター条件;

注意: 条件が追加されない場合、テーブル内のすべてのデータが変更されます。

2.3 データの削除

#データを削除します。DELETE FROM テーブル名 [WHERE 条件]; #条件を追加しないと、テーブル内のすべてのレコードが削除されます。
 
#テーブル内のすべてのレコードを削除します。DELETE FROM テーブル名; ---- 推奨されません。
TRUNCATE TABLE テーブル名; ----- 推奨、非常に効率的です。

削除と切り捨ての比較:

​​​​​​​​

MySQL の DDL と DML に関するこの記事はこれで終わりです。MySQL の DDL と DML の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQLオンラインDDLの使用に関する詳細な説明
  • MySQL DDL による同期遅延を解決する方法
  • MySQL DDLステートメントの使用
  • 一般的なMysql DDL操作の概要

<<:  HTML における <meta> タグの使用に関する詳細な説明

>>:  CSS エラスティック ボックス flex-grow、flex-shrink、flex-basis の詳細な説明

推薦する

CSSは、入力ボックスのフローティングテキスト効果を実現するために、placeholder-shown疑似クラスを使用します。

この記事では、:placeholder-shown 疑似クラスを使用して、純粋な CSS で浮動疑問...

React Native APPのアップデートに関する簡単な説明

目次アプリ更新プロセス大まかなフローチャートアプリ情報の更新1. まず取得する必要があるファイルアド...

Dockerが正常に起動しない原因と解決策を詳しく解説

1. Docker 起動時の異常なパフォーマンス: 1. ステータスが繰り返し再起動している場合は、...

シームレスなトークンリフレッシュを実現する方法

目次1. 需要方法1方法2方法3 2. 実装3. 問題解決質問1: トークンの複数回の更新を防ぐ方法...

MySQL ロックの知識ポイントのまとめ

ロックの概念①. 現実世界では、鍵は外の世界から身を隠したいときに使う道具です。 ②. コンピュータ...

Dockerコンテナが起動直後に終了する問題を解決する

最近、Docker がコンテナの起動時に特定のプロセスを直接実行できるようにする方法を調べていたとこ...

CentOS8 デプロイメント LNMP 環境で mysql8.0.29 をコンパイルしてインストールする方法の詳細なチュートリアル

1. 前提条件何度かインストールしているので、エラーについてはこれ以上説明しません。ちょっとわかりに...

MySQL 5.7.9 バージョンの sql_mode=only_full_group_by 問題を解決する

MySQL 5.7.9 バージョンの sql_mode=only_full_group_by の問題...

インデックスを設計する際の原則は何ですか? インデックスの障害を回避するにはどうすればよいでしょうか?

目次主キーインデックス頻繁にクエリされるフィールドのインデックスを作成する大きなフィールドのインデッ...

Dockerイントラネット侵入FRP展開の実装プロセスの分析

1. 設定ファイルディレクトリを作成するcd /ホームディレクトリmkdir frp最終的なディレク...

Docker で PostgreSQL を実行し、いくつかの接続ツールを推奨する

1 はじめに PostgreSQL は、非常に充実した機能を備えたフリーソフトウェアのオブジェクトリ...

mysql8でルートユーザーのパスワードをリセットする手順を完了します

序文最近、多くの新しい同僚がこの質問をしてきました。特に、homebrew を通じて自動的にインスト...

LinuxはMySQLデータベースの自動バックアップとスケジュールバックアップを毎日実装しています

概要バックアップは災害復旧の基礎であり、システム操作エラーやシステム障害によるデータ損失を防ぐために...

JS クロスドメイン ソリューション React 構成 リバース プロキシ

クロスドメインソリューションjsonp (get をシミュレート) CORS (クロスオリジンリソー...

Vueメソッドに基づくシンプルなタイマーの実装

Vueのシンプルなタイマーを参考にしてください。具体的な内容は以下のとおりです原理: setInte...