数据库的基本操作命令:
增:
create database work; #创建数据库
create table test (学号 char(9),姓名 char(10),年龄 smallint) character set = utf8mb4;
insert into test (学号,姓名,年龄) values ( '03' , '张三' ,23); #插入记录
alter table test add 城市 char(8) not null default '北京'; #增加字段,设置默认值
insert into test (学号,姓名,年龄,籍贯) values ( '02','susu',22,'北京'); #插入4项记录
alter table test add 邮箱 VARCHAR(200) not null default 'zhangbin@junxilinux.com';
删:
drop table test; #删除表
delete from test WHERE 学号='02'; #删除特定记录
drop database work; #删除数据库
ALTER TABLE user11 ALTER age DROP DEFAULT; #删除默认值
ALTER TABLE user11 ALTER email DROP DEFAULT;
alter table test drop column city; #删除表特定字段
改:
UPDATE test set 姓名='巨大' WHERE 姓名='李四'; #修改记录
ALTER TABLE user11 ALTER age SET DEFAUTL 18; # 给age添加默认值
ALTER TABLE user11 ADD email VARCHAR(50); # 添加一个字段
ALTER TABLE user11 ALTER email SET DEFAULT 'a@a.com'; # 给email添加默认值
UPDATE test set 邮箱='123@qq.com' WHERE 姓名='丁一';
ALTER TABLE test CHANGE 城市 籍贯 CHAR(32) NOT NULL DEFAULT '北京'; #修改字段名称与类型
-- ALTER TABLE 表名 CHANGE 原字段名 新字段名 字段类型 约束条件
UPDATE test set 籍贯='邢台' WHERE 姓名='丁二'; #修改籍贯实例
UPDATE test SET city='shanghai' WHERE name='lisi'; #修改城市实例
查:
select * from test; #查看表数据
show table status like 'test' \G; #查看表的存储引擎、记录数等
desc test; #查看表中所有字段,与数据类型。
select * from test order by 学号 desc; #降序查询
select * from test order by 学号 asc; #升序查询
select * from test WHERE 年龄 > 22; #按要求查询年龄
UPDATE test SET 年龄=年龄+1; #按要求更新年龄
用户管理:
#创建用户zhangbin设置密码1234只允许本地登陆。
CREATE USER root@localhost IDENTIFIED BY '123';
#修改用户名
rename user root@localhost to binge@localhost;
#设置用户密码
set password for zhangbin =password('1234');
#修改密码
update mysql.user set password=password('123.com') where user='root';
#刷新表设置
flush privileges;
#查看用户信息
select Host,User,Password from mysql.user;
#查看用户权限状态
show grants for root@localhost;
show grants for root@'%';
#赋予用户权限
grant select,create,drop,update,alter,insert on work.* to 'root'@'localhost' identified by '123.com' with grant option;
grant select,create,drop,update,alter on work.* to 'root'@'localhost' identified by '123.com' with grant option;
#刷新设置
flush privileges;
#查看权限
show grants for root@localhost;
#显示当前登录的用户
select user();
#撤销所有权限
revoke all on *.* from root@localhost;
#撤销指定库权限
REVOKE ALL ON work.* FROM 'root'@'localhost';
revoke SELECT,INSERT on work.* from 'root'@'localhost';
#必须先创建远程%
grant select,create,drop,update,alter on *.* to 'root'@'%'
grant select,create,insert,drop,update,alter on work.* to 'root'@'localhost';
revoke all on *.* from 'root'@'%';
删除账户及权限:
>drop user 用户名@'%';
>drop user 用户名@localhost;
drop user replName@'192.168.%.%';