SQL 構文と DDL ステートメントの使用


序文

この記事では主に SQL の一般的な構文と DDL ステートメントの使用方法を紹介します。読者はこの記事を読む前にデータベースの記憶構造を理解する必要があります。
ラボ環境:Windows11 オペレーティング システム、Mysql データベース


1. SQL の一般的な構文

关于sql语句的语法主要有以下几个方面:
(1) SQL语句可以单行或多行书写,以分号结尾
(2) SQL语句可以使用空格/缩进来增强语句的可读性
(3) MySQL数据库的SQL语句不区分大小写,关键字建议使用大写
(4) 注释
    单行注释:-- 注释内容 或 # 注释内容
    多行注释:/*  注释内容 */

2. DDL ステートメント

1. DDL 関数の概要

SQL ステートメントは、その機能に応じて主にDDL、DML、DQL、および DCLの 4 つのカテゴリに分類できます
この記事で紹介する DDL ステートメントの機能は次のとおりです:データベース オブジェクト (データベース、テーブル、フィールド)を定義するために使用されるデータ定義言語

2. DDL ステートメントはデータベース上で動作します

(1) すべてのデータベースにクエリを実行する

show databases;

このステートメントを入力すると、現在所有しているデータベース (mysql、information_schema など) が表示されます。
ここに画像の説明を挿入します

(2) 現在のデータベースをクエリする

select database();

現在使用されているデータベースがないため、空です。
ここに画像の説明を挿入します

(3) データベースの作成

create database [if not exists ] 数据库名 
[default charset 字符集] [collate 排序规则];
# 方括号中的都是可选内容,即使不书写也会采用默认方案

たとえば、test という名前のデータベースを作成し、そのデータベースのデフォルトの文字セットと並べ替えルールを使用すると、
ここに画像の説明を挿入します
現在のデータベース サーバーに test データベースが正常に作成されたことがわかります。

また、同じデータベースサーバー内に同じ名前のデータベースを2つ同時に作成することはできないため、作成しないとエラーが報告されます(再度testという名前のデータベースを作成するとエラーが報告されます)
ここに画像の説明を挿入します
。この問題を解決するには、データベースが存在する場合は作成せず、存在しない場合は作成します。
次の図に示すように、テスト データベースを再度作成しても、エラーは報告されません。
ここに画像の説明を挿入します

test1 という名前のデータベースを作成し、文字セットを utf8mb4 として指定するときに使用するステートメントは次のとおりです。
ここに画像の説明を挿入します

(4) データベースの削除

drop database [if exists] 数据库名;

以下のように、作成したtest1データベースを削除します。

(5) スイッチデータベース

use 数据库名;

データベース配下のテーブルを操作したい場合は、このコマンドを使用して対応するデータベースに切り替えないと操作できません。
以下の図に示すように、テスト データベースに切り替えます。
ここに画像の説明を挿入します

(6) 現在のデータベース内のすべてのテーブルをクエリします。

show tables;

注: このステートメントを使用する場合は、まず use ステートメントを使用してデータベースに切り替える必要があります。

たとえば、テスト データベースのテーブル データを確認すると、現在のテスト データベースにはテーブルがないため、空として表示されます。
ここに画像の説明を挿入します

(7) テーブル構造の作成

create table 表名(
             字段1 字段1类型[comment 字段1注释],
             字段2 字段2类型[comment 字段2注释],
             字段3 字段3类型[comment 字段3注释],
             ......
             字段n 字段n类型[comment 字段n注释]
             )[comment 表注释];

以下の図に示すようなテーブル構造を作成し、テーブルにcharactersという名前を付けます。test
ここに画像の説明を挿入します
ここに画像の説明を挿入します
という名前のデータベースにcharactersという名前のテーブル構造が正常に作成されたことがわかります。

(8) 指定したテーブル構造を表示する

desc 表名;

このコマンドにより、指定されたテーブルのフィールド、フィールドのタイプ、NULL が可能かどうか、デフォルト値があるかどうか、その他の情報を確認できます。
ここに画像の説明を挿入します

(9) 指定したテーブルのテーブル作成文を問い合わせる

show create table 表名;

このコマンドは主にテーブル作成ステートメントを表示するために使用されます。ストレージ エンジン、文字など、一部のパラメータはデータベースのデフォルト値であるため、テーブルの作成時に指定しなかった場合でもクエリされます。待機を設定します。
ここに画像の説明を挿入します

(10) テーブルにフィールドを追加します

alter table 表名 add 字段名 类型 [comment 注释] [约束];

次の図に示すように、文字テーブルに tel という名前のフィールドを varchar(11) 型で追加します。
ここに画像の説明を挿入します

(11) テーブル内の指定されたデータ型を変更する

alter table 表名 modify 字段名 新数据类型;

次の図に示すように、tel フィールドのタイプを varchar(12) に変更します。
ここに画像の説明を挿入します

(12) テーブル内のフィールド名とフィールドタイプを変更する

alter table 表名 change 旧字段名 新字段名 类型 [comment 注释] [约束];

たとえば、次の図に示すように、フィールド tel を newname に変更し、タイプを varchar(30) に変更します。
ここに画像の説明を挿入します

(13) テーブル内のフィールドを削除する

alter table 表名 drop 字段名;

次の図に示すように、フィールド newname フィールドを削除します。
ここに画像の説明を挿入します

(14) テーブル名の変更

alter table 表名 rename to 新表名;

以下に示すように、テストする文字テーブル名を変更します。
ここに画像の説明を挿入します

(15) テーブルの削除

drop table [if exists] 表名;

次の図に示すように、テスト テーブルを削除します。
ここに画像の説明を挿入します

(16) 指定したテーブルを削除し、テーブルを再作成します。

truncate table 表名;

このステートメントの機能は、指定されたテーブルを削除し、元のテーブルと同じテーブル名とヘッダーを持つテーブルを再作成することです。ただし、テーブルに格納されているデータはクリアされ、リフレッシュ テーブルとして機能します。

要約する

この記事ではSQL文におけるDDL文の使い方を中心に紹介しますので、参考になれば幸いです。

おすすめ

転載: blog.csdn.net/weixin_63614711/article/details/132447820