SQL语言

来源:互联网 发布:外卖小票打印软件 编辑:程序博客网 时间:2024/06/11 18:49

sql语言与SQL函数
概念
1、优点:功能强,效率高,简单易学维护
缺点:独立性执行语句,不完整性应用。
一、SQL语言分类
1、数据操纵语言DML
形式:插入(INSERT),更新(UPDATE),删除(DELETE),查询(SELECT)
2、数据定义语言DDL
创建更种对象:表,视图,索引,同义词,聚簇等。如:创建(CREATE)TABLE/VIEW/INDEX/SYN/CLUSTER、更改(ALERT)、删除(DROP)
3、数据控制语言DCL
数据控制语言DLC用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据可以实行监视等。如授权(GRANT)、回收(REVOKE)
4、事务控制语言TCL
事务控制语言是针对DML所执行的语句进行事务处理,事务处理主要有:提交(COMMIT)/回退到某一点(ROLLBACK [WORK] TO [SAVEPOINT])/回滚(ROLLBACK).回滚命令使数据库状态回到上次最后提交的状态

1、1数据定义语言
概念
数据定义语言只要用于改变数据库结构,包括创建、修改与删除数据库对象。
分类
1、CREATE TABLE(创建表结构)命令
1、必须写的内容:
1、唯一的表名称
2、表内唯一的列名称
3、列的数据类型及其宽度
2、命名规则:
1、表名首字符应该为字母
2、不能使用oracle保留字或关键字来做表名
3、表名的最大长度为30个字符
4、同一用户下的不同表不能具有相同的名称
5、可以使用下划线、数字或字母,但不能使用空格与单引号
注意
* Oracle中表名、列名、用户名以及其他对象表不区分大小写,系统会自动转换成大写,如果名称一定要区分大小写,应该把需要区分大小写的名称用双引号引住,被双引号引住的名称不会进行自动转换。
2、ALTER TABLE(更改表结构)命令
1、MODIFY(更改现有列的数据类型)
2、ADD(现有表中增加列)
3、DROP(现有表中删除某列)
4、RENAME(现有表中改列名)
3、TRUNCATE TABLE(截除表数据)命令
1、truncate table 命令与delete命令的区别:
1、delete可以按条件删除部分数据,与可以不带条件删除全部数据,而truncate table只能删除全部数据
2、删除的数据可以回滚,而truncate table不能回滚
3、TRUNCATE 不能触发任何DELETE触发器
4、大于大量数据的删除delete效率比truncate table效率低很多(其根本原因是truncate table删除数据时不会把被删除的数据写入重做日志文件中,而delete则需要。)
4、DROP TABLE(删除表)命令
drop是把整个对象删除,所在drop table不仅会删除表,还会把表中的全部数据一并删除,而且是无法回滚的。
1、2数据操纵语言
概念
数据操纵语言是指用来查询、添加、修改和删除数据库中数据的语句,这些语句包括SELECT、INSERT、UPDATE、DELETE等。在默认情况下,只有对象的所有者、DBA等才有权利执行数据操纵语言
分类
1、SELECT 命令
select 命令是用来检索数据表中的数据,select是最常用的命令。
如果发现有两行是重复的,想要去掉重复的行,只需要在查询语句中增加distinct关键字。
注意:
1、Distinct 必须要放在select关键字后面、查询字符按列表的前面。
2、使用distinct后,只是把重复的行去掉(即重复的行未被查询出来)
2、INSERT 命令
insert 命令用来在数据库表中插入数据的。
1、直接向部门表中插入数据
2、插入带有日期类型的数据行
3、通过select语句插入数据(注意:前面有value关键字,此时不能指定列名插入值,即被查出来的表与待插入数据的表的结构必须一样)
4、通过select语句插入数据(不需要用value关键字,可以指定列名插入数据)
3、UPDATE命令
使用update命令更新表中的数据时,每次更新可能是零行或一行或多行,如果要限定对特定的行进行更新,则要使用where子句
4、DELETE 命令
在表中插入数据后,如果有不需要的数据,可以删除,DELETE命令就是用于从表中删除行
1、3数据控制语言
概念:
数据控制语言是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、REVOKE等语句
1、GRANT语句
GRANT语句是授权语句,它可以把语句权限或者对象权限授予给其他用户和角色。授予语句权限的语法形式为:
GRANT 权限 TO 用户|角色 [WITH {ADMIN|GRANT} OPTION];
2、REVOKE语句
REVOKE语句是与GRANT语句相反的语句,它能够将以前用户或者角色上授予或拒绝的权限删除,但是该语句并不影响用户或者角色从其他角色中作为成员继承过来的权限。
REVORK 权限 [ ON 对象] FROM {用户|角色};
1、4事务控制语言
概念:
1、事务控制语言包括协调对相同数据的多个同步的访问。当一个用户改变了另一个用户正在使用的数据时,oracle使用事务控制谁可以操作数据。
2、事务表示工作的一个基本单元被成功或不成功操作的SQL语句。在SQL和PL/SQL中有很多语句让程序员控制事务。程序员可以:
1、显示开始一个事物,选择语句级一致或事务级一致性
2、设置撤销回滚点,并回滚到回滚点
3、完成事务永远改变数据或者放弃修改
事务控制语句主要包括COMMIT与ROLLBACK两个:
1、Commit:完成事务,数据修改成功并对其他用户开放
2、Rollback:撤销事务,撤销所有操作
3、Rollback to savepoint:撤销在设置的回滚点以后的操作。

原创粉丝点击