mysql表的操作

对表进行整体操作:

1.查看当前数据库有哪些表

show tables;

2.创建一个表

creat table 表名(表题 类型,表题 类型.......);

比如我们要创建一个:

那么就写:

create table student(
    num int(6),
    name varchar(10),
    sex varchar(2),
    age int,
    schooldate date);

注意:这里int可以不注明长度,默认11位,但是varchar必须指定长度

3.查询表中的数据:

select * from 表名;

4.查看一个表的结构:

desc 表名; 

5.删除一张表:

drop table 表名;

6.数据中double 长度控制可以两个,总长度和小数位数:double(5,2),表示总长度为5,小数位数是2

--------------------------------------------------------------------------------------------------------------------------------------

对表的结构进行修改:

1.增加字段

比如我们需要在student表中添加一个班级

 alter table student add class varchar(8);

那么表就:

2.修改类型:

 alter table student modify class int;

那么class的类型就变成了int

3.删除表题:

 alter table student drop class;

就删除类class这个表题

---------------------------------------------------------------------------------------------------------------------------------------------------

对表的数据进行操作

1.增加数据:

insert into student(num,name,sex,age,schooldate) values(6430,'Mason','M',20,'2017-9-11');

这里我们增加了一个数据,那么我们查询数据的时候:

注意:字符串和时间类型的数据插入需要加引号

也可以不用写前面的表题,只写数据:

insert into student values(6430,'Mason','M',20,'2017-9-11');

但是数据必须不能少,一一与表题对应

2.删除数据

我们要删除Tom这条数据

delete from student where name='Tom';

然后:

注意:如果要删除所有记录那么就直接:

delete from student;

3.修改数据

update student set sex='f';

这样就把所有的sex都变成了f

只改一处:

update student set sex='m' where name='Mason';

也是用where筛选,后面可以写多个表达式,逗号连接

----------------------------------------------------------------------------------------------------------------------------------------------

表的数据约束:

1.唯一约束  unique

create table tea(name varchar(11),num int unique);

在创建表的时候在对应的表题后面加上一个unique,这样我们的num就保证了单一性,不能出现num一样的数据

并且发现num的Key有了UNI,这个就是表示有了约束

2.非空约束  not null

 create table tea(name varchar(11) not null,num int);

这样name数据不能为空:

我们发现name的Null变成了NO

3.主键约束(primary key)

create table tea(name varchar(11) unique not null,num int);

key变成了PRI,其实我们可以直接这样创建:

create table tea(name varchar(11) primary key,num int);

4.外键约束  foreign  key

比如我们有两张表,其中一张的一个数据被另一张表的数据所约束,这样的情况我们就需要外键约束

首先创建一个班级表:

 create table class(num int primary key auto_increment,name varchar(11));

将num设置成主键制约。然后创建学生:

create table stu(num int primary key auto_increment,name varchar(11),classnum int,
       foreign key(classnum) references class(num));

后面这句话的意思是外键classnum受class里面的num制约,表示我们插入stu数据的时候classnum必须在num中存在

注意外键的对象必须在另一个表中是主键制约

5.主键自动增长  auto_increment

 create table tea(name varchar(11),num int primary key auto_increment);

然后插入数据:

insert into tea(name) values('Mason');

然后出现:

这里的num是自动帮我们加上去的

注意:自动增长对字符串不能用

猜你喜欢

转载自blog.csdn.net/scwMason/article/details/81808054