1. 程式人生 > >Oracle 事務、索引、視圖

Oracle 事務、索引、視圖

and savepoint view視圖 map 事務 nbsp delet rop 信息

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;

Oracle 事務、索引、視圖