主流:sqlserver,mysql,Oracle、SQLite、Access、MS SQL Server
毗邻:mysql -u user -p 退出:QUIT 或者 Ctrl+D
查看库: show databases; 查看表:SHOW TABLES;
用户治理:
建立用户create user ‘用户名’ @ ‘IP地址’ identified by ‘密码’;
删除用户dropuser ‘用户名’@’IP地址’;
修改用户rename user ‘用户名’@’IP地址’; to ‘新用户名’@’IP地址’;
修改密码set password for ‘用户名’@’IP地址’ = Password(‘新密码’)
权限治理:
通配符%示意随便
1、查看权限:show grants for ‘用户’@’IP地址’
2、授权:grant 权限 on 数据库.表 to ‘用户’@’IP地址’
3、作废授权:revoke 权限 on 数据库.表 from ‘用户’@’IP地址’
表的治理:
1、查看表select * from 表名; # 查看表所有内容
2、建立表create table 表名()ENGINE=InnoDB DEFAULT CHARSET=utf8
3、删除表drop
4、清空表deletefrom==truncate table
5、修改表
添加列: alter table 表名 add 列名 类型
删除列: alter table 表名 drop column 列名
修改列:
alter table 表名 modify column 列名 类型; -- 类型
alter table 表名 change 原列名 新列名 类型; -- 列名,类型
添加主键:
alter table 表名 add primary key(列名);
删除主键:
alter table 表名 drop primary key;
alter table 表名 modify 列名 int, drop primary key;
添加外键: alter table 从表 add constraint 外键名称(形如:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);
删除外键: alter table 表名 drop foreign key 外键名称
修改默认值:ALTER TABLE testalter_tbl ALTER i SET DEFAULT 1000;
删除默认值:ALTER TABLE testalter_tbl ALTER i DROP DEFAULT;
6.CRUD:
增:insert into tab1(name,email) values('zhangyanlin','zhangyanlin8851@163.com')
删:delete from 表 where id=1 and name='zhangyanlin'
改:update 表 set name = 'zhangyanlin' where id>1
查:select nid,name,gender as gg from 表 where id > 1
a、条件判断where b、通配符like '%1' c、限制limit
d、排序asc,desc e、分组group by 稀奇的:group by 必须在where之后,order by之前
7.视图view:视图是一个虚拟表,其内容由查询界说。对其中所引用的基础表来说,视图的作用类似于筛选。
8.存储历程procedure:??
9.函数function:内置函数
10.事物:事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个泛起错误,即可回滚到原来的状态,从而保证数据库数据完整性。
11.触发器trigger:触发器无法由用户直接挪用,而知由于对表的【增/删/改】操作被动引发的。
12.索引: 索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值举行排序的结构。
通俗索引index
唯一索引unique:在索引列上增加了一层唯一约束
主键索引primary key:主键索引是唯一索引的特殊类型
组合索引mix
制止使用select *
count(1)或count(列) 取代count(*)
建立表时只管时char 取代varchar
表的字段顺序牢固长度的字段优先
组合索引取代多个单列索引(经常使用多个条件查询时)
只管使用短索引
使用毗邻(JOIN)来取代子查询(Sub-Queries)
连表时注重条件类型需一致
索引散列值(重复少)不适合建索引,例:性别不适合
13.执行计划:explain + 查询SQL
14.limit分页:
下一页:
select *from tb1 where
nid < (select nid from (select nid from tb1 where nid < 当前页最小值 order by nid desc limit 每页数据 *【页码-当前页】) A order by A.nid asc limit 1)
order by nid desc limit 10;
原文链接:https://www.cnblogs.com/only666/p/12773347.html
本站声明:网站内容来源于网络,若有侵权,请联系我们,我们将及时处理。