sql语句分类以及示例使用:
1、DDL:数据定义语言,可以用来创建,修改,删除数据库对象。
(1)创建表、视图、索引、用户、角色
creat table 表名(列名 数据类型 [约束],列名 数据类型 [约束],列名 数据类型 [约束])
create table student( sno int , sname varchar(20), sage int, sex varchar(4), sdept varchar(20))
约束:not null 非空
primary key 主码约束即唯一且非空
auto_increment 自增长
unique 唯一
foreign key 外键(取值范围必须来自引用表的列)
check 检查
create table student( sno int primary key atuo_increment, sname varchar(20) not null, sage int , sex varchar(4) check(sage in('男','女')), sdept varchar(20) references school(sdept))
create view <视图名>[列名,列名] as <子查询>
create view is_stu(sno,sname,sage) as select sno,sname,sage from student where sdept='Is'
create unique index <索引名> on <表名>[列名,列名]
create unique index stusno on student(sno)
create user <用户名> identified by <密码>
create user s2015214102u1 identified by nefu1234
create role <角色名>
create role r2015214102
2、DML:数据操作语言,用来对表中的数据进行增加、删除、修改、查询。
insert:插入记录 update:修改记录 select:查询记录 delete:删除记录 insert: insert into 表名 values(值1,值2。。。) insert into 表名(列名,列名)values(值1,值2.。。) insert into 表名 查询语句 insert books(bookname,bookid)select name,userid from store; select: select 列名|表达式|* from 表名 select DISTINCT 列名(剔除重复)as ... select bookname ' ',price ' ' from book; select * from book where price<50; select * from book where price between 2 and 5; select * from book where bookname is null; select * fron book where bookname like '%新%'; select degree ,count(*),avg(salary) from student group by degree; 按degree进行分组,统计个学历的数目,平均年薪 group by 分组having avg(salary)<1000; wherer与having执行的时间不同。 select * from book order by bookname desc; limit 起点,记录数 order by 排序 update:/ update 表名 set 列名=值,列名=值 where studentname=‘胜多负少’; delete: delete from 表名 where 条件
3、DCL:数据控制语言,授权和撤销权限。
Grant <权限> [,<权限>]…
On <对象类型> <对象名> [,<对象类型> <对象名>]…
To <用户> [,<用户>]…
授权: grant select on student to s2015214102u1 grant all PRIVILEGES on student to s2015214102u2 grant update(sno) on student to s2015214102u4 grant insert on sc to s2015214102u5 Grant select on sc to public 收权: revoke update on student from s2015214102u2 revoke select on sc from public revoke insert on sc from s2015214102u5 给角色授权,并将角色给用户 grant select on student to r2015214102 grant r2015214102 to s2015214102u1