首页 > 代码库 > mysql 语法大全

mysql 语法大全

1.增加用户

添加一个用户对所有数据库有增删改查的功能  用命令grant(英文授权的意思)

格式为:grant 权限 on 数据库.* to 新增用户@登录主机 identfied by "密码";

例如增加用户 paddy 密码123456 只在本地对所有数据库具有增删改查的权限

grant select,insert,update,delete on *.* to paddy@localhost identfied by "123456";

如果用户要在任何主机上登录数据库,只需要将localhost修改为"%",如果为指定的IP登录,就修改为"ip地址"     

例如:grant select,insert,update,delete on *.* to paddy@"127.0.0.1" identfied by "123456";

2.显示、创建、删除、选择

show databases;

create database  paddy; 

drop database paddy;

use  paddy;

#判断是否存在数据库paddy,有的话先删除
drop database if exists paddy;

3.表 table

查表、

show tables;

#创建表
create table student(
id int auto_increment primary key,(id自增长的意思)
name varchar(50),
sex varchar(20),
date varchar(50),
content varchar(100)
)default charset=utf8;

删除表

dorp table student;

查看表的结构
describe student;  #可以简写为desc student;

插入数据

insert into student values(null,‘aa‘,‘男‘,‘1988-10-2‘,‘......‘);

查询表中数据

select * from student;

查询表中某项数据

select name from student;

修改表中某处数据

update  表名  set 列名和修改的字段 地点

update student set nane="paddy" where id=4;

删除数据;

delete  from student where id=4;

且 and

格式  select * from 表名 where 列名 区间 and 列名 区间;

查询出生在1980-1-10和1985-1-10之间的人

select * from student where date>‘1988-1-2‘ and date<‘1988-12-1‘;

或 or

select * from student where data>‘1988-1-01‘or date<‘1965-01-22‘;

between

select * from student where date between ‘1988-1-2‘ and ‘1988-12-1‘;

in 查询集合内的数据

select * from student where  id in {1,5,9};

表按升序排序 asc 表按降序排序 desc

格式:select * from 表名 order by asc;

select * from student order by asc;

select * from student order by desc;

查询第n条到第M条的数据,不包含n

格式:select * from 表名 limit  m,m;

select * from student limit 2,5; 显示3-5条数据

统计表中总数 count(*)

select count(*) from student;

例如统计id总数

select count(id) from student;

修改表的名字

格式 alter table 旧的表名 rename to 新的表名;

alter table a rename to b;

 

#修改表的名字
#格式:alter table tbl_name rename to new_name
alter table test rename to test_rename;

#向表中增加一个字段(列)
#格式:alter table tablename add columnname type;/alter table tablename add(columnname type);
alter table test add columnname varchar(20);

#修改表中某个字段的名字
alter table tablename change columnname newcolumnname type; #修改一个表的字段名
alter table test change name uname varchar(50);

select * from test;

#表position 增加列test
alter table position add(test char(10));
#表position 修改列test
alter table position modify test char(20) not null;
#表position 修改列test 默认值
alter table position alter test set default ‘system‘;
#表position 去掉test 默认值
alter table position alter test drop default;
#表position 去掉列test
alter table position drop column test;
#表depart_pos 删除主键
alter table depart_pos drop primary key;
#表depart_pos 增加主键
alter table depart_pos add primary key PK_depart_pos
(department_id,position_id);

#用文本方式将数据装入数据库表中(例如D:/mysql.txt)
load data local infile "D:/mysql.txt" into table MYTABLE;

#导入.sql文件命令(例如D:/mysql.sql)
source d:/mysql.sql; #或者 /. d:/mysql.sql;

 

mysql 语法大全