SQL学习总结之SQL的分类介绍
- 作者: miss寒雪
- 来源: 51数据库
- 2021-09-03
一、sql语言的分类:sql语言大体可分为ddl、dcl和dml三类。其中,ddl又包含create,alter和drop;
dcl包含grant和revoke,而dml中最常见的有select,insert,update,和delete。
1、 ddl(数据定义语言)
◎ create语句
sql> create table example_1
2 (col_1 number not null,col_2 varchar2(20));
table created.
◎ alter 语句
sql> alter table example_1 add col_3 char(10);
table altered.
◎ drop 语句
sql> alter table example_1 drop column col_3;
table altered.
2、 dcl(数据控制语言)
◎ grant(授予权限)
sql> grant select on student to scott;
--使scott用户有查询当前用户模式下的student表的权限。
grant succeeded.
--测试授权是否成功
sql> conn scott;
enter password:
connected.
--查询system用户下student表
sql> select * from system.student;
stuno stuname st rolltime
---------- -------------------- -- --------------
112 duyubo m 08-8月 -09
110 cj m 12-8月 -09
◎ revoke(收回权限)
sql> conn system/system;
connected.
--收回权限
sql> revoke select on student from scott;
revoke succeeded.
测试权限是否成功收回
sql> conn scott/scott
connected.
sql> select * from system.student;
select * from system.student
*
--错误:表不存在(因为没有权限)
error at line 1:
ora-00942: table or view does not exist
3、 dml(数据操纵语言)
◎ select语句(使用最为广泛的语句)
sql> select * from student;
stuno stuname st rolltime
---------- -------------------- -- --------------
112 duyubo m 08-8月 -09
110 cj m 12-8月 -09
◎ insert(插入数据)
--如果要对表中的每一列数据都进行插入操作,则表后的列项可以省略,如
sql> insert into student values(100,'jc','m',sysdate);
1 row created.
--但当仅对表中部分列进行插入操作时,必须指明字段名称,而且字段名称应该与values后--的值一一对应。
sql> insert into student(stuno,stuname,stusex)
2 values(211,'wnt','m');
1 row created.
◎ updaet(更新)
sql> update student set stuname='yinxiong'
2 where stuno=100;
1 row updated.
◎ delete (删除内容)
--注意,delete是删除内容的,删除过后表结构不变。二drop是删除表或字段,删除表,则对应的表也就不存在了;同理,删除字段,则对应的字段也就不存在了。
sql> delete from student where stuname='yinxiong';
--仅仅删除stuname=‘yinxiong’对应列的内容。
1 row deleted.
- SQLite数据库操作:原生操作,GreenDao操作讲解
- 数据库SQL实战题:获取员工其当前的薪水比其manager当前薪水还高的相关信息(教程)
- SQLSERVER查询区分大小写的写法分析
- SQL学习总结之SQL的分类介绍
- 阶梯到高级T-SQL 1级:高级T-SQL介绍交叉连接
- 高级T-SQL级别1的Stairway:使用CROSS JOIN引入高级T-SQL分析
- 什么是SQL隔离级别?四个SQL隔离级别定义介绍
- Sql递归介绍之用with实现递归查询
- SQLSERVER查询时日期格式化的实例讲解
- 数据库SQL实战:从titles表获取按照title进行分组,注意对于重复的emp_no进行忽略(题解)