数据库基础操作
alter table 表名 增/删/改 列名 类型(长度) 约束;
alter table 表名 add 列名 类型(长度)约束 //增加列
alter table emp2 add age int;
alter table 表名 modify 列名 类型(长度) 约束 //修改现有列类型、长度和约束
alter table emp2 change name username varchar(60) unique not null;
删除现有列 语法:alter table 表名 drop 列名 ;
alter table emp2 drop age;
修改表名 语法: rename table 旧表名 to 新表名;
需求:将emp2表名修改为person表
rename table emp2 to person;
修改表的字符集 语法:alter table 表名 character set 编码集;
需求: 将emp的编码修改成utf8。
第一步:查询此时表的编码。show create table emp;
第二步:将emp的编码修改成utf8
alter table emp character set utf8;
数据表删除(重要)
dorp table 表名;
简单数据表内容的增删改
insert语句----向数据表插入数据
三种
insert into person(id,username,password,sex,birthday,salary) values(null,‘zhangsan’,‘123’,‘nan’,‘1992-8-19’,12000); //全部对应
insert into person(username,password,birthday) values(‘suoge’,‘123’,‘1995-10-19’);//省略可以为空或者有默认值的
insert into person values(null,‘wangwu’,‘123’,‘nv’,‘1987-8-9’,13000); //省略所有列
update语句 更新数据
update 表名 set 列名=值,列名=值… [ where条件语句 ];
update person set password=“123” ;//将所有用户密码重置为123
update person set password=“123456” where username=“张三”;将张三密码重置为123456
delete语句
delete from 表名 [where条件语句]
delete from person where username=‘zhaoliu’;
delete from person;
truncate 语句----删除数据
如果要删除一张表中的所有数据,也可以使用 truncate table 表名;执行时会把表的所有内容都删除掉,然后在创建一个新的表。truncate 缺点:不能有条件的删除。delete 是逐行删除,并没有恢复初始化值。
面试题
delete删除表中的数据时没有加where 条件,会删除表中的所有数据,它与truncate 有什么区别?
1.DELETE
・DML语言・数据还可以找回来,恢复回来
・可以有条件的删除。DELETE FROM 表名 WHERE 条件
2.TRUNCATE TABLE
・DDL语言・数据不可以恢复
・先将整个表删除,再重新创建 ・删除速度比delete快。
语法: TRUNCATE TABLE 表名 或者 TRUNCATE 表名
delete from person; 和 drop table person; 有什么区别:
delete from person; 把person表中的所有数据全部删除,但是person的表还存在。还可以向表中继续添加数据。drop table person; 把person数据表从数据库中删除。表已经不存在,不能再向表中添加数据。