mysql数据库的4种基本操作是_mysql数据库基本操作(三)

数据表操作

基础操作

1.创建表(类似于一个excel表)

create tabletab_name(

field1 type[完整性约束条件],

field2 type,

...

fieldn type

)[character set xxx];

数据库的增删查改和数据类型掌握后,就可以开始在数据库里面建表了,首先有一个主键的概念:能够唯一区分出当前记录的字段称为主键,主键要是非空且唯一的,且字段一定要是数字类型,下面我们创建一个员工表:

创建一个员工表employeecreate tableemployee(

idint primary keyauto_increment ,

namevarchar(20),

genderbit default 1, --gender char(1) default 1 ----- 或者 TINYINT(1)jobvarchar(20),

salarydouble(4,2) unsigned,

resumetext --注意,这里作为最后一个字段不加逗号

);/*约束:

primary key (非空且唯一) :能够唯一区分出当前记录的字段称为主键!

unique

not null

auto_increment 主键字段必须是数字类型。

外键约束 foreign key*/

7ce45d8ef530559c94c93b59f072ded6.png

2.查看表信息

desctab_name 查看表结构

show columnsfromtab_name 查看表结构

show tables 查看当前数据库中的所有的表

showcreate table tab_name 查看当前数据库表建表语句

有些命令和database的很像,这里就不演示了。

3.修改表结构

什么是表结构的修改?其实就是对字段(类似Excel里面的表头)的修改,因为现在表里面还没有任何数据,所以现在只能对字段进行增删改查。

(1)增加列(字段)

首先我们试一下增加一个字段:

alter table tab_name add [column]列名 类型[完整性约束条件][first|after 字段名];alter table employee add addr varchar(20) not null unique after name;

增加了一个名叫addr的字段,数据类型是varchar(20),约束条件是非空且唯一,位置在字段name后面,我们现在查看一下表结构:

03a3152f29f9ad7214c0e1375bce7018.png

也可以同时增加多个字段,注意字段名不要重复了:

#添加多个字段alter tableemployeeadd hobby varchar(20),add age intfirst,add birth TINYINT after name;

a68daa225731eb51660f746503001e5b.png

(2)修改一列类型

我们把age 的类型和位置改一下,最后的修改会覆盖之前的修改内容;

alter table tab_name modify 列名 类型 [完整性约束条件][first|after 字段名];alter table employee modify age tinyint ;alter table employee modify age int default 20 after id;

60935bbf8508994e6b321c36cc05c8d6.png

(3)修改列名

现在我们把age改成Age,并修改约束条件:

alter table tab_name change [column] 列名 新列名 类型 [完整性约束条件][first|after 字段名];alter table employee change age Age int default 28 first;

3b02c9d28254f42032122df951caca7b.png

(4)删除一列

现在把Age这一行删除:

alter table tab_name drop [column]列名;alter table employee drop Age;

d171fe0a3983f69ba2dd885a3993dcd4.png

那么,删除多行或者删除一行又增加一行怎么写?我们先把最后两行resume和hobby删除:

alter table employee dropresume,drop hobby;

7d687c8612977971ea56eb034ab6216e.png

删除一行增加一行也是一样的,分两行写就行了。

(5)修改表名

rename table 表名 to 新表名;

rename table employee to emp;

(6)修该表所用的字符集

和第一篇我们修改数据库字符集一样:

alter table student character set utf8;

4.删除表

删除表就很简单了:

drop table tab_name;

5 添加\删除主键

alter table tab_name add primary key(字段名称,...)alter table users drop primary key;

6.唯一索引

现在我们的表还没有数据,当我们表里面有大量数据的时候,我们再按主键去查找的话,需要遍历,耗时就很长了,这个时候有一个唯一索引,他的算法不是通过遍历去查找,而是更优化的一种方法,从而提升查找的效率,大概能达到几百倍的提升,下面就是唯一索引的一些语法:

alter table tab_name add unique [index|key] [索引名称](字段名称,...)alter table emp add unique(name)--索引值默认为字段名show create table emp;

alter table emp add unique key user_name(name);--索引值为user_name

--添加联合索引

alter table emp add unique index name_age(name,birth);#show create tableemp;--删除唯一索引

alter table tab_name drop {index|key} index_name

完整性约束条件之主键约束

单字段主键

主键字段特点:非空且唯一

create tableusers(

idINT primary key,

namevarchar(20),

ageTINYINT);

多字段联合主键

<1> 一张表只能有一个主键

<2> 主键类型不一定非是整型

create tableusers2(

idINT,

namevarchar(20),

ageTINYINT,primary key(name,id)

);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值