/*
表的增删改查
增
创建
删除
删除整张表
改
改变表名
改变列名
改变列类型
查
查询表结构
查询表信息
表数据的增删改查
增
插入指定列
插入全部
删
清空表数据
删除指定
改
修改全部
修改指定
查
查询全部
查询指定列
查询指定行
分组
排序
约束
主键
唯一不为空
外键
唯一
唯一
非空
不能为空
默认
设置默认值
*/
/创建表/
student 表格名
sid 表头
int 属性
后面的也一样
create table student(sid int, sname varchar(10),age int);
/改变表名/
alter table student rename to stu;
/查询表结构/
desc student;
/删除表/
drop table stu;
/增加一个字段/
alter table student add column
phone varchar(30);
/改变字段名/数据类型/
alter table student change column phone ph varchar(30);
alter table student modify ph int;
/删除字段/
alter table student drop ph;
/增加一条数据/
insert into student values(1,'吕国伟',22);
insert into student (sid,sname) values (2,'张三');
/改变表数据/
update student set age=18;
update student set age=22 where sid=1;
/查询表所有数据/
select * from student;
/查询指定字段数据/
select sname from student;
/查询出来的字段名可以改变/
select sname '名字',age '年龄' from student;
/清空表数据/
delete from student;
delete from student where sid=2;
/约束/
/主键/
/加/
alter table student add primary key(sid);
/删/
alter table student drop primary key;
/*非空*/
alter table student modify sname varchar(30) not null;
alter table student modify sname varchar(30);
/*默认值*/
alter table student modify age int default 20;
alter table student modify age int;
/*外键
一个表里面的外键必须是另一个表的主键
*/
alter table student add foreign key(cla) references clas(cid);
/*自己定义外键名*/
alter table student add constraint sc foreign key(cla) references clas(cid);
alter table student drop foreign key student_ibfk_1;
/*唯一*/
/*
添加唯一约束时需要注意约束名称
删除时需要根据约束名称删除
当没有自定义约束名称时,
系统会自动生成一个
可以通过show create table 表名;进行查询
*/
alter table student add unique(sname);
alter table student drop index sname_2;
desc student;
insert into student (sid,sname) values (2,'李四');
select * from student ;
delete from student where sid = 2 or
sid = 3;
show create table student;
CREATE TABLE student
(
sid
int(11) NOT NULL default '0',
sname
varchar(30) NOT NULL,
age
int(11) default '20',
cla
int(11) default NULL,
PRIMARY KEY (sid
),
KEY sc
(cla
),
CONSTRAINT sc
FOREIGN KEY (cla
) REFERENCES clas
(cid
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
create table clas(cid int primary key,cname varchar(30));
drop table clas;
alter table student add cla int;
desc clas;
insert into clas values (1,"1");
insert into clas values (2,"2");
select s.sid,s.sname,s.age,c.cname
from student s join clas c on s.cla = c.cid;