7.4 データテーブルの操作

1. テーブルを作成する

文法形式

CREATE [TEMPORARY] TABLE <表名>
(<列名1> <数据类型> [ DEFAULT‘默认值’]
 [ATUO_INCREMENT] [列级完整性约束]
 <列名2><数据类型> 
.......
|[index_definition]
)[表设置];

[TEMPORARY] 一時テーブルを作成します
[index_diction] フィールドのインデックスを指定します

簡略化された文法

CREATE TABLE<表名>
(<列名1><数据类型>
 <列名2><数据类型> 
 .......
)[表设置];

[例 7-1] コマンドを使用して、学生番号、名前、性別、生年月日、専攻番号を含む学生テーブル Stu を stuInfo データベースに作成します。

USE stuInfo;
CREATE TABLE Stu
(Sno char(6) NOT NULL,
 Sname varchar(4),
 Ssex Enum('男','女'),
 Sbirth date,
 Zno varchar(4)
);

2. テーブルを表示する

現在のデータベース内のテーブル名を表示します

テーブルを表示します。

指定されたテーブルの構造を表示します

DESC [RIBE] テーブル名;
SHOW CREATE TABLE テーブル名;


3. テーブルを変更する

ALTER TABLE <テーブル名> ステートメントは、既存のテーブルの列を追加、変更、または削除するために使用されます。

ALTER TABLE <表名>
[ADD <列定义> [first|after列名] 
 |[MODIFY <列定义> [first | after 列名]]
 |[DROP <列名>]
 |[CHANGE <旧列名> <新列名> <新数据类型>]
 |[RENAME <新表名>]
 |[ORDER BY <列名>]


[例 7-9] stu データ テーブルの Sbrith の後に属性 scollege を挿入します。長さは 20 で、空であってもかまいません。
列を追加

ALTER TABLE stu
ADD scollege char(20);

空は許可されません

ALTER TABLE stu
ADD scollege char(20) not null;

出産コラムの後

ALTER TABLE stu
ADD scollege char(20) not null after sbirth;

[例 7-6] 属性 scollege を長さ 10 に変更し、最初の列に配置します

ALTER TABLE stu
MODIFY scollege char(10) first;

【例7-10】 大学列を削除します。

ALTER TABLE stu
drop scollege;

4. テーブルのコピー

文法形式

CREATE [temporary] TABLE <表名>
[like 源表名] | [as (select 语句)];

[例7-15] stuテーブルをstu1にコピーします。データをコピーせず、構造のみをコピーします

CREATE TABLE stu1
LIKE stu;

[例 7-16] stu テーブルの sno と sname を stu2 にコピーします。データをコピーする

CREATE TABLE stu2
AS
SELECT sno,sname FROM stu;

5. テーブルの削除

文法形式

DROP TABLE [IF EXISTS]<表名>

6. テーブル管理上の注意事項

1. 空の値 NULL

不明、使用不可、または後で追加されるデータを示し、数字の 0 やヌル文字とは異なります。

2. カラムのフラグ(IDENTITY)属性

どのテーブルでもフラグ列を作成でき、順序値はシステムによって生成されます。シリアル番号値はテーブル内の行を一意に識別し、キー値として使用できます。

3. 列タイプの暗黙的な変更

MySQL では、システムはテーブルで指定されたカラムの型を暗黙的に変更します。長さが4未満のVARCHAR型はCHAR型に変更されます。

おすすめ

転載: blog.csdn.net/qq_25887493/article/details/123826866