DCL語句(Data Control Language,數據控制語言):主要由grant和revoke關鍵字完成
(1)grant:MySQL 賦予用戶權限命令
語法:grant 權限 on 數據庫對象to 用戶
eg、
一、grant 普通數據用戶,查詢、插入、更新、刪除 數據庫中所有表數據的權利。
grant insert on testdb.* to common_user@'%'
grant update on testdb.* to common_user@'%'
grant delete on testdb.* to common_user@'%'
或者,用一條 MySQL 命令來替代:
查看當前用戶(自己)權限:
查看其他 MySQL 用戶權限:
(2)revoke:撤銷已經賦予給 MySQL 用戶權限的權限。
revoke 跟 grant 的語法差不多,只需要把關鍵字 “to” 換成 “from” 即可:
revoke all on *.* from dba@localhost;
1. grant, revoke 用戶權限後,該用戶只有重新連接 MySQL 數據庫,權限才能生效。
2. 如果想讓授權的用戶,也可以將這些權限 grant 給其他用戶,需要選項 “grant option“
事務控制:主要由commit,roolback和savepoint三個關鍵字完成。
事務要麼成功,要麼失敗,它是一個不可分割的工作單位;若在執行過程中失敗通過回滾可回到最初狀態。
commit TRAN 提交事務;
roolback TRAN 回滾事務,將發生的都忘記,回到起點;
savepoint:創建一個特定標記符,只允許部分回滾。
view視圖:
在 SQL 中,視圖是基於 SQL 語句的結果集的可視化的表。邏輯表;
視圖包含行和列,就像一個真實的表。視圖中的字段就是來自一個或多個數據庫中的真實的表中的字段。我們可以向視圖添加 SQL 函數、WHERE 以及 JOIN 語句,我們也可以提交數據,就像這些來自於某個單一的表。
註釋:數據庫的設計和結構不會受到視圖中的函數、where 或 join 語句的影響。
SQL CREATE VIEW 語法
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
function函數:用於完成一次特定的計算,具有返回值
procedure存儲過程:用於完成一次完整的業務處理,沒有返回值,但可以通過傳出參數將多個值傳給調用環境
trigger觸發器:相當於一個事件監聽器,當數據庫發生特定事件後,觸發器被觸發,完成相應的處理。
上文參考:http://www.cnblogs.com/hcbin/archive/2010/04/23/1718379.html
http://www.w3school.com.cn/sql/sql_view.asp