一.SQL语言基础
1.1SQL语言分类
sql语言按照实现功能的不同可以分为DML(数据操纵语言)、DDL(数据定义语言)、DCL(数据控制语言),DML主要用来处理数据库中的数据,DML语言允许用户对数据库的数据进行增删改查等操作。
DML常用语句和功能如下:
SELECT:从表中或者视图进行查询。
INSERT:插入数据到表或者视图
UPDATE:更新
DELETE:删除
CALL:调用过程
MERGE:合并(插入或者修改)
COMMIT:将当前事务所做的更改写入数据库
ROLLBACK:事务回滚,取消上次提交以来的所有操作
DDL常用语句如下:
CREATE:创建数据库结构
ALTER:修改数据库结构
DROP:删除数据库结构
RENAME 更改数据库对象的名称
TRUNCATE:删除表的全部内容
DCL常用语句如下:
GRANT:授予其他用户对数据库结构的访问权限
REVOKE:收回用户访问数据库的权限
1.2. SQL语言规范
SQL关键字、对象名、和列名不区分大小写,但是字符值和日期值区分大小写,语句末尾要以;结束。
1.3使用select语句进行检索
1.select *** from 表名 ;
2.select *** from 表名 wherr (限制条件);
where条件中可以使用的操作符有比较操作符(>、<、=、!=、ANY、ALL、BETWEEN、LIKE、IN、IS NULL),BETWEEN、LIKE、IN。
3.order by字句,用来对列进行排序,默认升序ASC,降序是DESC。
4.group by对表中某一列或多列进行分组,分组后可以用聚合函数对分组的数据进行统计
5.having字句经常和group by字句一起使用,主要的效果是对分组后的数据进行进一步的筛选。
6.distinct关键字用来限定列的显示数据不能显示重复值,在列前进行使用。
1.4update语句
update 表名 set *** where 更新条件
1.5delete语句
delete from scott.emp where empno=1568;
1.6常用聚合函数
AVG(x):返回列平均值
MAX(x):返回最大值
MIN(x):返回最小值
SUM(x):返回和
COUNT(x):返回记录的统计数量
1.7事务处理
数据库中的事务是工作中的一个逻辑单元,有一个或者多个sql语句组成,如果对事务进行提交,所有对数据得更改都写入数据库中,成为数据库中的永久的一部分,如果事务遇到错误被取消或者回滚,则事务中的所有操作都会被清除,数据恢复到事务执行前的状态,事务的sql语句要么全部被执行,要么不执行。
事务的4个特性:
1.原子性:事务的sql语句要么全部被执行,要么不执行。
2.一致性:事务完成时,必须使所有的数据保持一致,在相关的数据库中,所有的规则都必须应用于事物的修改,以保持所有数据的完整性。
3.隔离性:由并发事务所做的修改必须与任何其他并发事务所做的修改隔离。
4.持久性:事务完成后,对数据库的影响是永久性的。
事务没有开始处理语句,所有事务都是隐性开始的,当用户需要终止一个事务时,必须显示的COMMIT或者ROLLBACK,提交或者回滚事务。
保存点:我们可以为事务设置多个保存点,将一个较大的事务分割成一系列较小的部分,当回滚事务时,就可以回滚到指定的保存点。
SAVEPOINT save1;
ROLLBACK to SAVEPOINT save1;