mysql常用sql

1、操作数据库
create databases blk charset utf8; // 创建数据库并设置字符集
use blk ; //使用blk数据库
show databases ; // 查看有哪些数据库
drop database blk ; // 删除数据库
show create database blk ; // 查看创建数据库的语句

2、表的约束和创建
非空not null
自增长auto_increment
默认值default ‘value’
唯一约束unique
主键 primary key
外键:用来表示两个表之间的关系

use blk ;
create table emp(
id int not null auto_increment ,
name varchar(20) not null ,
sex varchar(6) default ‘男’,
phone int not null unique ,
addr varchar(30) ,
primary key (id)
) default charset utf8 ;

desc emp ;

3、操作表
insert into emp (id ,name , sex , phone ,addr ) value ( 1 , ‘张三’ ,’男’ ,’1350000000’ , ‘北京东城’) ;

insert into emp (name , sex , phone ,addr )
values
( ‘张三1’ ,’男’ ,’1350000001’ , ‘北京东城’) ,
( ‘张三2’ ,’男’ ,’1350000002’ , ‘北京东城’) ,
( ‘张三3’ ,’男’ ,’1350000003’ , ‘北京东城’) ,
( ‘张三4’ ,’男’ ,’1350000004’ , ‘北京东城’) ;

alter table emp rename emp2 ; 改表名
alter table emp modify name varchar(50) unique;
alter table emp change name name varchar(30); 修改字段的数据类型
alter table emp add money float not null after name ; 新增一个字段,放在哪个位置
alter table emp drop money; 删除某个字段

show create table emp ; #查看建表语句
desc emp;查看表结构
show tables;#查看所有的表

*delete from emp ; 删除整个表里的数据
*truncate emp ; #删除整个表里的数据
*delete清空的表自增长id还会继续增长
*truncate 清空的表自增长id从1开始,truncate速度比delete要快,因为truncate 是从磁盘上直接把数据删除,恢复不了。

4、 数据库权限:

   flush privileges;#刷新权限 

    mysql数据的权限实质上都是在user表里控制的
    grant #所有的权限  所有数据库下的所有表  用户 用户ip 
    grant all on   *.* to 'lihy'@'localhost' IDENTIFIED BY '123456' with grant option;
            密码       #有执行grant语句的权限
    grant all on    *.* to 'lihy'@'%' IDENTIFIED BY '123456' with grant option;
    取消授权:
    Revoke select on *.* from dba@localhost;
    Revoke all on *.* from lihy@localhost;

5、 存储过程:
用于批量的造数据

        delimiter $$; #为了改结束符
		create  procedure  p_emp (num int)#代表要造多少条数据
		BEGIN
		DECLARE i int;
		set i=0;
		WHILE i<num do
		insert into  emp  (name , sex , phone ,addr )  values ( CONCAT( '张三' , i ) ,'男' ,'1350000000' , '北京东城') ;
		#CONCAT的作用是连接不同类型的数据 ,把字符串和数字拼接到一起
		set i=i+1;
		end WHILE;
		End $$;
        delimiter;  

call p_emp (100) ; // 调用存储过程

6、union 与 union all

select id,name from emp union select id, t_name from teacher;
union 用来合并两条select语句的结果,两条select语句字段数量要一致,并且数据类型也要一致.
union 对查询结果去重
union all 对查询结果不去重,效率比较高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值