MySql基础篇:DDL篇
MySql基础篇:DDL篇

MySql基础篇:DDL篇

  • 数据库操作

一.查询数据库

SHOW DATABASE();

二.查询所有数据库

SELECT DATABASE();

三.创建数据库

CREATE DATABASE [IF NOT EXISTS] 数据库名字 [DAFAULT 字符集] [collate 排序规则];

四.删除数据库

DROP DATABASE[IF EXISTS]数据库名;

五.选择数据库

USE 数据库名;
  • 表操作

一.创建表

create table 表名 {
列名,数据类型,约束条件
};

二.查看表定义

desc 表名;
show create table 表名 G;;

*以上语句除了可以看到表定义以外,还可以看到表的engine(存储引擎)和charset(字符集)*

三.删除表

drop table 表名;

四.修改表(重要)

1.修改表类型

ALTER TABLE 表名 MODIFY [COLUMN] column_definition [FIRST | AFTER col_name];

例如,修改表 stud 的 st_name 字段定义,将 varchar(10)改为 varchar(20)

mysql> alter table Stud modify st_name varchar(20);

2. 增加表字段

ALTER TABLE 表名 ADD [COLUMN] [FIRST | AFTER col_name];

例如,表 stud 上新增加字段 st_test,类型为 int(5)

mysql> alter table stud add column st_test int(5);

3. 删除表字段

ALTER TABLE 表名 DROP [COLUMN] col_name

例如,将字段 st_test 删除掉

mysql> alter table Stud drop column st_test;

4. 字段改名

ALTER TABLE 表名 CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name];

例如,将 st_sex 改名为 st_sex0,同时修改字段类型为 int(5)

mysql> alter table Stud change st_sex st_sex0 int(5);

*change 和 modify 都可以修改表的定义,不同的是 change 后面需要写两次列名,不方便。但是 change 的优点是可以修改列名称,modify 则不能*

5. 修改字段排列顺序

在(ADD/CNAHGE/MODIFY)中后面括号里面的可选项first|after column_name,这个选项可以用来修改字段在表中的位置

alter table 表名 add 列名 数据类型 after 列名;

例如,将新增的字段 st_test 加在 st_id 之后

mysql> alter table Stud add st_test date after st_id;

*默认 ADD 增加的新字段是加在表的最后位置,而 CHANGE/MODIFY 默认都不会改变字段的位置*

修改已有字段 st_name,将它放在最前面

mysql> alter table Stud modify st_name varchar(20) default ” first;

注意:CHANGE/FIRST|AFTER COLUMN 这些关键字都属于 MySQL 在标准 SQL 上的扩展,在其他数据库上不一定适用。

6.表名修改

ALTER TABLE 表名 RENAME [TO] new_tablename;

例如,将表 Stud 改名为 stud

mysql> alter table Stud rename stud;

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

隐藏
变装