更改表名
alter table tableoldname rename to newname;
更改表结构
改类型 alter table tabname modify colname coltype;
改列 alter table table change oldcolname newcolname coltype;
添加一行 alter table tablename add newcolname coltype first | after xxx;
删除一行 alter table tablename drop colname;
修改列的位置 alter table tabname modify colname coltype first|after xxx;
– 表创建好了 把一列变为主键
ALTER TABLE grade ADD CONSTRAINT pk_tabname PRIMARY KEY(gradeid);
– 添加外键
alter table tabname add constratin 约束名 foreign key(字段) references 主表(主键);
ALTER TABLE student ADD CONSTRAINT FK_ID FOREIGN KEY (gradeld) REFERENCES grade(gradeid);
数据添加
insert into 表名 values(值列表);
insert into 表名(字段列表) values(值列表); 值列表必须和列举出的字段对应,个数类型对应
给表中所有的列添加数据
插入多条记录
insert into 表名 values(值列表1),(值列表2),(值列表3);
– 主键自增
INSERT INTO employee VALUES(NULL,‘C’,‘女’,‘1997-9-6’,‘113’,NULL);
– null值的插入 以及 默认值的插入
INSERT INTO employee VALUES(NULL,‘C’,DEFAULT,‘1997-9-6’,‘113’,NULL);
INSERT INTO employee VALUES(100,‘C’,DEFAULT,‘1997-9-6’,‘113’,NULL);
INSERT INTO employee(empname,empbirth,empphone) VALUES(‘D’,NOW(),‘114’);
– 插入多条记录
INSERT INTO employee VALUES(NULL,‘E’,‘男’,‘1998-9-9’,‘112’,2),(NULL,‘F’,‘男’,‘1998-9-9’,‘112’,2);
– 创建表并添加记录 此时表是不存在的
CREATE TABLE emp_bak AS SELECT * FROM employee;
CREATE TABLE emp_bak2 AS SELECT empid,empname,empsex FROM employee;
INSERT INTO employee2 SELECT * FROM employee;
INSERT INTO employee2(empname,empsex) SELECT empname,empsex FROM employee;
– 如何备份一个表结构,不要数据
SELECT NOW();
SELECT empid,empname,empsex FROM employee;
SELECT * FROM emp_bak2;
SELECT * FROM employee2;
SELECT empname,empsex FROM employee;
插入多条记录的方法
insert into 表名 values (值列表1),(值列表2),(值列表3);
create table 表名 as select… 数据表不存在,语句执行后会创建
insert into 表名 select …:插入表中字段必须和查询的字段保持一致
修改
update 表名 set 列=值,列=值 … where 条件
– 修改empid为1 的员工名字为 张三丰 ,电话
UPDATE employee SET empname=‘张三丰’ WHERE empid=1;
UPDATE employee SET empname=‘张三丰’,empphone=‘118’ WHERE empid=1;