標籤:
view(視圖):
虛擬表
主要用來看(查)資料
基表的資料變化會在視圖中體現出來
許可權控制
將多表查詢的結果整合在視圖中方便使用者查看
create view v1 as select ...查詢語句
WITH CHECK OPTION 選項-- 插入後的資料,通過視圖能夠查詢出來就符合WITH CHECK OPTION 否則就不符合
DROP VIEW IF EXISTS t_student;
CREATE VIEW t_student AS
SELECT * FROM student
WITH CHECK OPTION;
該視圖是查詢student表中的所有記錄,進行更新的語句如下。
1 INSERT INTO `t_student` VALUES (‘10004‘, ‘趙六‘, 22, ‘wang123‘); -- 插入時如果其他未設定的欄位有預設值,可以插入,如果沒有就報錯
2 UPDATE t_student SET name=‘趙六2‘ where id=‘10004‘; -- 更新可以
3 DELETE FROM t_student WHERE id = ‘10004‘; -- 刪除也可以
統計資訊、函數的結果均可做成視圖
show tables; 查看有哪些視圖
show create view v1\G
drop view if exists v1;
==========================================
事務
begin 開始一個事務
rollback 交易回復
commit 事務確認
MySQL提供了多使用者並發訪問資料的能力, 對資料的一致性、完整性形成了巨大的挑戰.
不同的資料庫管理系統均提供了並發控制功能.
不同的開發工具往往也提供了實現資料庫並發控制的命令.
begin
savepoint test; 儲存某個點
rollback to savepoint test;
transaction(事務):
事務是並發控制的基本單位
只有innodb/BDB儲存引擎支援事務show engines\G
注意建表時用innodb儲存引擎
事務的4個特性:
原子性(Atomicity): 原子意為最小的粒子, 或者說不能再分的事物,組成事務的所有語句必須要麼全部執行, 要麼全部取消
隔離性(Isolation): 某個事務的操作對其他事務不可見
持久性(Durability): 當事務完成後, 其影響應該保留下來, 不能撤消
一致性(Consistency): 指資料的規則, 在事務前/後應保持一致
s1讀資料, s2也訪問同一資料, 修改了它, s1再讀, 得到的資料不一樣了, 違反了一致性
set autocommit=0 禁止自動認可
set autocommit=1 開啟自動認可
MySQL視圖、事務