1、事务(Transaction)
1、完整事务:分为显示 关键字:只有用到commit 才能真正写入数据库
隐示事务:连接——set autocommit on(针对一个连接)
正常执行完成的:create、alter、drop
正常执行完场的:grant、revoke
正常退出SQLPlus或者SQL Developer等客户端
——回滚:RollBack只能对未提交的数据撤消,已经commit的数据无法撤销,业务commit之后已经持久化到数据库中。
2、部分事务:关键字——save point
1 UPDATE departments SET address = ‘5号教学楼‘ 2 WHERE department_id = 104; 3 SAVEPOINT sp1; 4 DELETE FROM departments WHERE department_id = 104; 5 SELECT * FROM departments; 6 ROLLBACK TO sp1; 7 SELECT * FROM departments;
上面代码:删除操作回滚,修改操作提交。
3、只读事务:关键字——set transaction read only
SET TRANSACTION READ ONLY; SELECT * FROM departments; UPDATE departments SET address = ‘8号教学楼‘ WHERE department_id = 104; ROLLBACK;
4、单独事务——SQLServer、mysql独有
2、索引
B树索引——create index 索引名 on 表(列)
卫图索引——create bitmap index 索引名 on 表(列);
反向建索引——create index 索引名 on 表(列) reverse;
查看索引
user_indexes: 系统视图存放是索引的名称以及该索引是否是唯一索引等信息。
user_ind_column: 系统视图存放的是索引名称,对应的表和列等。
删除索引——drop index 索引名;
3、视图
建立视图Create and use a view/Creating and Using Simple Views 在Departments表上建立视图Departments_view,视图Departments_view映射表Departments 的全部行列。 CREATE VIEW Departments_view AS SELECT * FROM Departments;
使用视图
使用视图Create and use a view/Creating and Using Simple Views 1.查询Performing a SELECT on a View 例Departments_view上查询其中的所有行列。 SELECT * FROM Departments_view;
显示Depertments_view视图结构——DESCRIBE students_view;
修改视图——modify a view;
删除视图——列:DROP VIEW Departments_view;