MySql的表级操作(DDL)

DDL:data  define language数据定义语言。

一、先了解一些数据库操作命令

1、查看库:show  databases;

查看所有已经存在的数据库。

2、创建库:create  databse  库名;

创建指定的数据库。

3、删除库:drop  database  库名;

删除指定的数据库。

4、选择库:use  库名;

选择要操作的数据库,一般先选择自己要操作的数据库。

5、查看数据库的创建信息

show  create  database  库名;

扫描二维码关注公众号,回复: 4133212 查看本文章

二、表级操作ddl

1、查看当前数据库中所有的表

show tables;

2、查看指定的表的信息。

desc  table  table_name;

说明:要指定自己要查看的表名。

3、查看表的创建信息

show  create  table  table_name;

4、创建表

create  table  table_name;

5、删除表

drop  table  table_name;

6、字符集

(1)什么是字符集

比如gbk、ascii等。

(2)查看字符集

show  character  set;

显示MySQL支持的所有字符集。

(3)指定字符集

创建表时在最后面指定,比如

create  table  table_name() engine=Innodb  default charset=utf8;

  说明:engine=Innodb中Innodb是默认的存储引擎,查看MySQL所支持的存储引擎:show  engines;

配置MySQL的配置文件:

windows:在C:\ProgramData\MySQL\MySQL Server 5.7目录下的my.ini

注意:ProgramData是隐藏文件。

Linux:/etc/mysql/mysql.conf.d/mysql.conf

7、字段修饰:

unsigned:无符号数

zerofill:高位0填充,防止出现负数。

auto_increment:自动增加,用于整数,一般主要用于主键。

default:默认值null

not  null:非空,即:不准许为空。

使用方式一,建表的时候:

create  table  user(

    id  int  not null;

)

使用方式二,建表之后alter:

alter  table  user  modify  id  int(11)  auto_increment;

8、索引

普通索引:index,最基本的,应该也是默认的,不需要进行设置。

唯一索引:unique,保证字段唯一不可重复,一个表可以有多个唯一索引。

主键索引:primary key,特殊的唯一索引,一个表中只能有一个主键索引。

全文索引:fulltext,对全局数据进行添加索引,很少用,效率低。

使用,方式一:

create  table  user(

    id  int  primary key,

    name  varchar(10)  unique

)

index索引不适用。

方式二:

create  table  user(

    id  int ,

    name  varchar(10)  ,

    primary key(id),

    unique(name)

)

方式三:

alter  table user  add  index(name);

给name 添加一个index索引,其他所有也是如此。

alter table  user  drop  index  name;

删除字段name的index的索引,似乎只有index能删除。

9、建表之后的修改操作,关键字alter

(1)增加字段add

alter  table  table_name  add  field  type;

比如:alter  table  user  add  age  int(4);

默认是在最后面追加。

(2)指定增加字段在表中显示的位置add

alter  table  table_name  add  field  type  after  field2;或者alter table  table_name  add  field  type  first;位列第一。

比如:alter  table  user  add  age  int  after  id;或者alter  table  user  add  age  int  first;

(3)删除字段drop

alter  table  table_name  drop  field;  

(4)修改字段modify和chage

change:

修改字段名:alter  table  table_name  change  oldfield  newfield  type;

修改字段位置:alter  table  table_name  change  oldfield  newfield  type  first;或者alter  table  table_name  change  oldfield  newfield  type  after  field2;

比如;alter table user change name username  varchar(15)  not null  first;

注意:使用change必须要修改字段名,而且必须至少要修改到字段修饰的type否则会报错。

modify:

修改字段位置:alter  table  table_name  modify  field  first;或者alter  table  table_name  modify  field  after  field2;

比如:alter table  user  modify  username  varchar(15)  not  null  first;

注意:modify不同于change的是不能修改表名,同样至少也要修改到字段修饰的type。

猜你喜欢

转载自blog.csdn.net/ryuhfxz/article/details/83755683