1.修改表名
语法:alter table<旧表名> rename [to] <新表名>;
例如:alter table `demo01` rename `demo02`;
其中,to为可选参数,使用与否不影响结果。仅修改表名,表结构不变
2.添加字段
语法:alter table 表名 add 字段名 数据类型 [属性]
例如:alter table demo02 add `password` varchar(32) not null;
3.修改字段
数据表中一个字段中包含字段名和数据类型,因此如果实现修改字段,可以包括修改字段名和
修改数据存储的类型。
语法:alter table 表名 change 原字段名 新字段名 数据类型 [属性];
例如:alter table demo02 change `name` `username` char(10) not null;
4.删除字段
删除字段就是将数据表中的某个字段从表中移除
语法:alter table 表名 drop 字段名;
例如:alter table demo02 drop `password`;
5.添加主外键
(1)添加主键约束
语法:alter table 表名 add constraint 主键名 primary key 表名(主键字段);
例如:alter table `grade` add constraint `pk_grade` primary key `grade`(`gradeId`);
(2)添加外键约束
语法:alter table 表名 add constraint 外键名 foreign key (外键字段) references 关联表名
(关联字段)
例如:alter table `student` add constraint fk_student_grade foreign key (`gradeId`)
references `grade` (`gradeId`);
DML:insert(增) delete(删) update(改)
1.插入数据记录
(1)插入单行数据
语法:insert into 表名 [(列名)] values (值列表);
其中:
a.表的字段名是可选的,如果省略,则依次插入所有字段
b.多个列表和多个值之间使用逗号分隔
c.值列表必须和字段名列表数量相同,且数据类型相符
d.如果插入的是表中部分数据,字段名列表必须填写
例如:insert into `student` (`loginPwd`,`studentName`,`gradeId`,`phone`,`borndate`)
values ('123','黄小平',1,'13956799999','1996-5-8');
(2)插入多行数据
语法:insert into 新表 (字段名列表) values (值列表1),(值列表2),……,(值列表n);
例如:insert into `subject`(`subjectName`,`classHour`,`gradeID`)
values('Logic Java',220,1),
('HTML',160,1),
('Java OOP',230,2);
(3)将查询结果插入到新表
句式1语法如下:
insert into 新表(字段1,字段2,……)
select 字段1,字段2,……
from 原表
例如:insert into studentDB(studentName,sex,adress)
select studentName,sex,adress from student
句式2语法如下:
create table 新表(
select 字段1,字段2,……from原表
);
例如:create table `phoneList` (
select `studentName`,`phone` from `student`
);
2.更新数据记录
语法:update 表名 set 字段1=值1,字段2=值2,……,字段n=值n [where 条件]
例如:update `student` set `phone` = '13810145778',`address`='北京市海定区'
where `studentNo` = 10011;
3.删除数据记录
语法:delete from 表名 [where 条件];
例如:delete from `phoneList` where `studentName` = `黄小平`;
除此之外,也可以使用truncate语句删除表中所有行
语法:truncate table 表名
例如:truncate table myschool;