Skip to content

Commit e1e2dfe

Browse files
committed
auto commit
1 parent 3b567e0 commit e1e2dfe

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

notes/SQL 语法.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ SQL(Structured Query Language),标准 SQL 由 ANSI 标准委员会管理,
4343

4444
SQL 语句不区分大小写,但是数据库表名、列名和值是否区分依赖于具体的 DBMS 以及配置。
4545

46+
SQL 支持以下三种注释:
47+
4648
```sql
4749
# 注释
4850
SELECT *
@@ -502,8 +504,6 @@ FROM mytable
502504
WHERE col =2;
503505
```
504506

505-
506-
507507
# 视图
508508

509509
视图是虚拟的表,本身不包含数据,也就不能对其进行索引操作。对视图的操作和对普通表的操作一样。
@@ -528,8 +528,8 @@ WHERE col5 = val;
528528

529529
**使用存储过程的好处**
530530

531-
1. 把实现封装在了存储过程中,不仅简单,也保证了安全性
532-
2. 可以复用代码
531+
1. 代码封装,保证了一定的安全性
532+
2. 代码复用
533533
3. 由于是预先编译,因此具有很高的性能。
534534

535535
**创建存储过程**
@@ -629,7 +629,7 @@ MySQL 不允许在触发器中使用 CALL 语句 ,也就是不能调用存储
629629

630630
不能回退 SELECT 语句,回退 SELECT 语句也没意义;也不能回退 CRETE 和 DROP 语句。
631631

632-
MySQL 的事务提交默认是隐式提交,也就是每执行一条语句就会提交一次。当出现 START TRANSACTION 语句时,会关闭隐式提交;当 COMMIT 或 ROLLBACK 语句执行后,事务会自动关闭,重新恢复隐式提交。
632+
MySQL 的事务提交默认是隐式提交,也就是每执行一条语句就把这条语句当成一个事务然后进行提交。当出现 START TRANSACTION 语句时,会关闭隐式提交;当 COMMIT 或 ROLLBACK 语句执行后,事务会自动关闭,重新恢复隐式提交。
633633

634634
通过设置 autocommit 为 0 可以取消自动提交,直到 autocommit 被设置为 1 才会提交;autocommit 标记是针对每个连接而不是针对服务器的。
635635

@@ -703,16 +703,17 @@ DROP USER myuser;
703703
```sql
704704
SHOW GRANTS FOR myuser;
705705
```
706-
<br><div align="center"> <img src="https://github.com/CyC2018/InterviewNotes/blob/master/pics//c73aa08e-a987-43c9-92be-adea4a884c25.png"/> </div><br>
707-
708-
账户用 username@host 的形式定义,username@% 使用的是默认主机名。
709706

710707
**授予权限**
711708

712709
```sql
713710
GRANT SELECT, INSERT ON mydatabase.* TO myuser;
714711
```
715712

713+
<br><div align="center"> <img src="https://github.com/CyC2018/InterviewNotes/blob/master/pics//c73aa08e-a987-43c9-92be-adea4a884c25.png"/> </div><br>
714+
715+
账户用 username@host 的形式定义,username@% 使用的是默认主机名。
716+
716717
**删除权限**
717718

718719
```sql
@@ -721,7 +722,7 @@ REVOKE SELECT, INSERT ON mydatabase.* FROM myuser;
721722

722723
GRANT 和 REVOKE 可在几个层次上控制访问权限:
723724

724-
- 整个服务器,使用 GRANT ALL和 REVOKE ALL;
725+
- 整个服务器,使用 GRANT ALL 和 REVOKE ALL;
725726
- 整个数据库,使用 ON database.\*
726727
- 特定的表,使用 ON database.table;
727728
- 特定的列;

0 commit comments

Comments
 (0)