mysql 6大常见的约束:
主键约束:primay key 主键字段不允许有重复的记录,不允许为null,一个表只能有一个主键
唯一性约束:unique key 唯一键字段不允许有重复的记录,但允许为null,一个表可以有多个唯一键
非空约束:not null
默认值约束:default
自增约束:auto_increment
外键约束:foreign key
克隆表:
①create table xxx like yyy;
insert into xxx(select * from yyy);数据和表的结构都不会变;
②create table xxx (select * from yyy);数据不变,表的结构会变;
删除表:
①delete from table;一行行删,可恢复
②truncate table xxx;格式化,不可恢复
创建临时表:
create temporary table xxx;
外键关联:
alter table xxx add primary key (字段);
alter table 从表 constraint FK_01 add foreign key (字段) references 主键表名(主键字段);
查询:show create table xxx;
客户管理:
①增加:create user ''@'' identified by '密码';
②删除:drop user ''@'';
③查询:select user,host,authentication_string from mysql.user;
④重命名:rename user ''@'' to ''@'';
⑤改密码:set password [for ''@''] =passwod('密码');
忘记密码怎么修改:
①先在配置文件中的mysqld模块中添加skip-grant-tables,重启服务
②直接用mysql免密进入数据库
③执行update mysql.user set authentication_string=password('密码') where name='';
④退出还原配置文件再重启服务
权限管理:
grant all on ~.~ to ''@'' identified by '密码';(如果没有这个用户可以新创建这个用户)
show grants for ''@'';
revoke all on ~.~ from ''@'';