auto commit

This commit is contained in:
CyC2018
2018-05-30 18:41:35 +08:00
parent 0a47291191
commit b04f8e35a4
10 changed files with 230 additions and 198 deletions

View File

@ -374,10 +374,10 @@ HAVING num >= 2;
分组规定:
1. GROUP BY 子句出现在 WHERE 子句之后ORDER BY 子句之前;
2. 除了汇总字段外SELECT 语句中的每一字段都必须在 GROUP BY 子句中给出;
3. NULL 的行会单独分为一组;
4. 大多数 SQL 实现不支持 GROUP BY 列具有可变长度的数据类型。
- GROUP BY 子句出现在 WHERE 子句之后ORDER BY 子句之前;
- 除了汇总字段外SELECT 语句中的每一字段都必须在 GROUP BY 子句中给出;
- NULL 的行会单独分为一组;
- 大多数 SQL 实现不支持 GROUP BY 列具有可变长度的数据类型。
# 十四、子查询
@ -520,10 +520,10 @@ WHERE col =2;
视图具有如下好处:
1. 简化复杂的 SQL 操作,比如复杂的连接;
2. 只使用实际表的一部分数据;
3. 通过只给用户访问视图的权限,保证数据的安全性;
4. 更改数据格式和表示。
- 简化复杂的 SQL 操作,比如复杂的连接;
- 只使用实际表的一部分数据;
- 通过只给用户访问视图的权限,保证数据的安全性;
- 更改数据格式和表示。
```sql
CREATE VIEW myview AS
@ -536,11 +536,11 @@ WHERE col5 = val;
存储过程可以看成是对一系列 SQL 操作的批处理;
使用存储过程的好处
使用存储过程的好处
1. 代码封装,保证了一定的安全性;
2. 代码复用;
3. 由于是预先编译,因此具有很高的性能。
- 代码封装,保证了一定的安全性;
- 代码复用;
- 由于是预先编译,因此具有很高的性能。
命令行中创建存储过程需要自定义分隔符,因为命令行是以 ; 为结束符,而存储过程中也包含了分号,因此会错误把这部分分号当成是结束符,造成语法错误。
@ -561,6 +561,7 @@ create procedure myprocedure( out ret int )
into y;
select y*y into ret;
end //
delimiter ;
```
@ -632,10 +633,10 @@ MySQL 不允许在触发器中使用 CALL 语句,也就是不能调用存储
基本术语:
1. 事务transaction指一组 SQL 语句;
2. 回退rollback指撤销指定 SQL 语句的过程;
3. 提交commit指将未存储的 SQL 语句结果写入数据库表;
4. 保留点savepoint指事务处理中设置的临时占位符placeholder你可以对它发布回退与回退整个事务处理不同
- 事务transaction指一组 SQL 语句;
- 回退rollback指撤销指定 SQL 语句的过程;
- 提交commit指将未存储的 SQL 语句结果写入数据库表;
- 保留点savepoint指事务处理中设置的临时占位符placeholder你可以对它发布回退与回退整个事务处理不同
不能回退 SELECT 语句,回退 SELECT 语句也没意义;也不能回退 CREATE 和 DROP 语句。
@ -659,9 +660,9 @@ COMMIT
基本术语:
1. 字符集为字母和符号的集合;
2. 编码为某个字符集成员的内部表示;
3. 校对字符指定如何比较,主要用于排序和分组。
- 字符集为字母和符号的集合;
- 编码为某个字符集成员的内部表示;
- 校对字符指定如何比较,主要用于排序和分组。
除了给表指定字符集和校对外,也可以给列指定: