この記事は MySQL 学習ノート シリーズの紹介記事であり、主に MySQL テーブルの基本的な操作コマンドについて説明しています。必要な方はぜひご覧ください
。 create table テーブル名 存在しない場合はテーブルを作成 テーブル名
mysql> create database company; Query OK, 1 row affected (0.00 sec) mysql> use company; Database changed mysql> create table if not exists t_dept( -> deptno int, -> dname varchar(20), -> loc varchar(40)); Query OK, 0 rows affected (0.20 sec) mysql> show tables; +-------------------+ | Tables_in_company | +-------------------+ | t_dept | +-------------------+ 1 row in set (0.00 sec) mysql>
create table if not exists 表名
mysql> show tables; +-------------------+ | Tables_in_company | +-------------------+ | t_dept | +-------------------+ 1 row in set (0.00 sec)
显示当前库下的所有表
show tables;
mysql> describe t_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.00 sec) mysql> desc t_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
查看表的结构
describe 表名<br>
简写
desc 表名
mysql> show create table t_dept; +--------+--------------------------------------------------------------+ | Table | Create Table | +--------+--------------------------------------------------------------+ | t_dept | CREATE TABLE `t_dept` ( `deptno` int(11) DEFAULT NULL, `dname` varchar(20) DEFAULT NULL, `loc` varchar(40) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 | +--------+--------------------------------------------------------------+ 1 row in set (0.00 sec) show create table t_dept \G mysql> show create table t_dept \G *************************** 1. row *************************** Table: t_dept Create Table: CREATE TABLE `t_dept` ( `deptno` int(11) DEFAULT NULL, `dname` varchar(20) DEFAULT NULL, `loc` varchar(40) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 1 row in set (0.00 sec)
查看表的详细
show create table 表名
mysql> drop table if exists t_dept; Query OK, 0 rows affected (0.12 sec) mysql> show tables; Empty set (0.00 sec)
删除表
drop table 表名drop table if exists 表名
mysql> alter table t_dept rename tab_dept; Query OK, 0 rows affected (0.09 sec) mysql> show tables; +-------------------+ | Tables_in_company | +-------------------+ | tab_dept | +-------------------+ 1 row in set (0.00 sec) mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
修改表名
ALTER TABLE old_table_name RENAME [TO] new_table_name
old_table_name 原表名
new_table_name 新表名
将t_dept修改为tab_dept
mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.00 sec) mysql> alter table tab_dept add descri varchar(20); Query OK, 0 rows affected (0.33 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 4 rows in set (0.00 sec)
为表增加一个字段默认在最后ALTER TABLE table_name ADD 属性名 属性类型<br>
为tab_dept增加一个字段descri varchar(20)
mysql> alter table tab_dept add id int first; Query OK, 0 rows affected (0.38 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
在表的第一个位置增加一个字段
ALTER TABLE table_name ADD 属性名 属性类型 first
mysql> alter table tab_dept add comm varchar(20) after dname; Query OK, 0 rows affected (0.31 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | comm | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 6 rows in set (0.00 sec)
在表的指定字段之后增加字段
ALTER TABLE table_name ADD 属性名 属性类型 AFTER 属性名
mysql> alter table tab_dept drop comm; Query OK, 0 rows affected (0.32 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
删除字段
ALTER TABLE table_name DROP 属性名
mysql> alter table tab_dept modify descri int; Query OK, 0 rows affected (0.45 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | int(11) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
字段修改-修改字段数据类型
ALTER TABLE table_name MODIFY 属性名 数据类型
mysql> alter table tab_dept change id deptid int; Query OK, 0 rows affected (0.07 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptid | int(11) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | int(11) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
字段修改-修改字段名称
ALTER TABLE table_name CHANGE 旧属性名 新属性名 旧数据类型
mysql> alter table tab_dept change deptid id varchar(32); Query OK, 0 rows affected (0.49 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | varchar(32) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | int(11) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
字段修改-同时修改字段名称与数据类型
ALTER TABLE table_name CHANGE 旧属性名 新属性名 新数据类型
mysql> alter table tab_dept modify deptno int first; Query OK, 0 rows affected (0.33 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | id | varchar(32) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | int(11) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
修改顺序
ALTER TABLE table_name MODIFY 属性名1 数据类型 FIRST|AFTER 属性名2
現在のライブラリの下にあるすべてのテーブルを表示します
show tables;
mysql> alter table tab_dept modify deptno int after descri; Query OK, 0 rows affected (0.29 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | varchar(32) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | int(11) | YES | | NULL | | | deptno | int(11) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec) mysql> alter table tab_dept modify deptno int first; Query OK, 0 rows affected (0.34 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> alter table tab_dept modify id int after descri; Query OK, 0 rows affected (0.47 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc tab_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | int(11) | YES | | NULL | | | id | int(11) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)テーブルの構造を表示
テーブル名を説明🎜
🎜🎜略語🎜🎜🎜desc テーブル名🎜🎜🎜🎜rrreee🎜テーブルの詳細を表示🎜🎜🎜show create table テーブル名 code>🎜🎜🎜🎜rrreee🎜🎜drop table🎜🎜🎜🎜drop table テーブル名🎜<code>drop table if selected table name
🎜🎜🎜🎜rrreee🎜🎜modify table name🎜🎜🎜🎜ALTER TABLE old_table_name RENAME [TO] new_table_name🎜old_table_name 元のテーブル名🎜new_table_name 新しいテーブル名🎜 t_dept を tab_dept に変更🎜🎜🎜🎜rrreee🎜 デフォルトで最後にテーブルにフィールドを追加します🎜ALTER TABLE table_name ADD 属性名attribute type🎜 code>🎜🎜tab_deptにフィールド記述varchar(20)を追加🎜🎜🎜🎜rrreee🎜テーブルの先頭位置にフィールドを追加🎜🎜🎜<code>ALTER TABLE table_name ADD属性名 属性タイプを最初に
🎜 🎜🎜🎜rrreee🎜🎜テーブル内の指定されたフィールドの後にフィールドを追加します🎜🎜🎜🎜ALTER TABLE table_name ADD 属性名 属性タイプ AFTER 属性名🎜🎜🎜🎜rrreee🎜🎜フィールドを削除🎜🎜🎜🎜ALTER TABLE table_name DROP 属性名🎜🎜 🎜🎜rrreee🎜🎜フィールドの変更-フィールドのデータ型を変更🎜🎜ALTER TABLE table_name MODIFY 属性名のデータ型🎜🎜🎜🎜rrreee🎜🎜フィールドの変更-フィールド名を変更します🎜🎜🎜 🎜ALTER TABLE table_name CHANGE 古い属性名 新しい属性名 old データ型🎜🎜🎜🎜rrreee🎜🎜フィールドの変更 - フィールド名とデータ型を同時に変更します🎜🎜🎜🎜ALTER TABLE table_name CHANGE 古い属性名 新しい属性名 新しいデータtype🎜🎜🎜🎜rrreee🎜🎜順序を変更🎜🎜🎜🎜ALTER TABLE table_name MODIFY 属性名 1 データ型 FIRST|AFTER 属性名 2🎜🎜🎜 2 つの属性が存在する必要があります🎜 deptno を最初の位置に調整します🎜🎜🎜🎜rrreee🎜IDを最後に入れてください🎜 🎜🎜🎜rrreee以上がmysql学習テーブルの基本操作のコード共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。