mysql常见知识点

1、理解数据库的最好的方法是把数据表想象为一个网格
============================1查==================1============================================
显示信息的查看
a    show databases;    
      show tables;|desc 表名 
      show columns from customers;   
     show status;服务器状态   show  create database 用来显示创造特定数据库
     show grants 用来显示授权用户安全权限   show errors  和 show warnings用来显示服务器错误
     select * from  products; (distinct 只返回不同的值)
     
 select distinct *

from 表名
where ....查询条件
group by ... having ...  //新分组字段名
order by ...        //排列列名
limit star,count  //过滤行数

执行顺序为:
连接concat      //串联字符select concat(vend_name,'(',vinde,')') as vend_title
函数          //文本处理upper等  //时间函数 //数值处理 //计算函数,平均值,总和
from 表名
where ....//条件语句:子句操作符,id<=10;between  5  and  10  范围的匹配(and,or,in,not);
           通配符like:where prod_name like 'jet%',下划线的的单字符
           正则表达式regexp:regexp不使用通配符也能匹配or,and,|
group by ...having ... //创建分组,过滤分组,分组排序
select distinct *
having ...
order by ...        //多个排序,desc关键降序排序
limit star,count     (limit  不少于)limit  3,4从行3的取4行相当于 limit 4 offset 3
实际使用中,只是语句中某些部分的组合,而不是全部


子查询  将一个查询单独拿出

组合查询union  多个sql语句查询


全文检索  select  from   where  match(指定搜索的列)  against()
           
=====================增==================================
1创建库,表
create database 数据库名
使用数据库:use database
create   主键  外键的使用 auto——increment自动增量

create  table 表名(
字段1  数据类型 属性

字段n  数据类型 属性
)表类型 注释:


2插入数据  insert  into   表名(字段名)  values(值);
3
1连结是利用sql的select能执行的最重要的操作
2理解关系表的最好方式是来看一个现实世界中的例子
3创建连接a先将需要的列出来b外键进行连接
4内连接,左连接,右连接,(自然连接,自连接,外连接)
子查询  select  from  表名  where  not  exists(子查询)
内连接  selsct  字段名  from  表名  as  inner  join  result  as  on  (条件)
外连接   selsct  字段名  from  表名  as  left |right    join  result  as  on  (条件)
4理解视图最好看例子:简化操作,
create  view  vendorlocations as 子查询语句
检测操作是否可行
创建视图:create  view  studeng _result;
删除视图:drop  view  视图名;
查看视图:select  字段名  from  view_name,查看视图
5创建存储过程call   create   drop

6创建游标 open cursor  

7创建触发器  trigger
8创建索引index
创建索引  create  index 索引名;
删除索引:droP index  索引名;
查看索引:show  index  from  索引名;
==========================改=====================
1 update 更新表名  列名新值  过滤条件
update  表名  set  列名  =更新值(where 更新条件)
2alter   数据的更新
修改表:alter  table  旧表名  return  to  新表名
添加字段:alter  table  表名 add  字段名  数据类型属性
修改字段:alter table 表名  change  原字段名 新字段名  数据类型数进行
删除字段:alter table  表名  drop  字段名
添加主键:alter  表名  add  constaint  主键名  primary  key表名
添加外键:alter  表名  add  constraint  外键名  foreign   key  (外键字段)  references  关联表名
============================删=====================
delete  删除整行
update  指定删除列
drop    删除表
rename  更改名字
drop database 数据库名
drop table  表名
delete  from  表名  where  删除字段

扫描二维码关注公众号,回复: 4731220 查看本文章


===========================事务===========================
rollback
commit
savepoint

begin 开始事务
.....
....
commit提交事务  rollback  回滚事务
======================安全管理===============================
1创建账号授权
2数据库备份
备份  mysqldump  -u账号名   -h主机 -p密码  dbname数据库[数据库[数据表]]>name.sql
回复   mysql -u账号  -p密码<name.sql
数据导出  
数据库的导入mysql>source  数据库名
3数据库集群
1主从  与读写分离
2herarout+drbd
3mmm
4mha
5
6


4操作默认引擎 show  variables  like  'storage_engine%' defalut storage -engine=innodb  //也可以在实际中指定引擎
                 

猜你喜欢

转载自blog.csdn.net/Stestack/article/details/85463672