[end_label]
call proc_name([paramter[,...]])
select fun_name([paramter[,...]])
使用show status 語句檢視儲存過程和函式的狀態
show status
2. 使用show create 語句檢視儲存過程和函式的定義
show create proc_name
3. 從information_schema.routine表中檢視儲存過程和函式的資訊
select * from information_schema.routine where routine_name='proc_name'
alter proc_name;
drop procedure proc_name
drop function fun_name
能夠啟用觸發器的sql語句:insert、delete、update
建立一條執行語句的觸發器
create trigger trigger_name before|after trigger_event on table_name for each row trigger_simt
trigger_event:觸發執行條件,insert delete insert
trigger_simt:啟用觸發器後執行的sql語句
建立多條執行語句的觸發器
create trigger trigger_name before|after trigger_event on table_name for each row begin trigger_simit end
通過show triggers語句檢視
show triggers \g
2. 通過檢視系統表triggers實現檢視
use information_schema
select * from triggers
drop trigger trigger_name
redo日誌:事務執行時需要將執行的事物日誌寫入redo日誌檔案裡,在mysql崩潰時會重新執行redo日誌中的記錄
undo日誌:主要用於事務異常時的資料回滾,即就是複製事務前的資料庫內容到undo緩衝區,然後在合適的時間將內容重新整理到磁碟。
begin:開啟事務
commit:結束事務
rollback:回滾事務
mysql可通過set autocommit、start transaction、commit和rollback 支援本地事務
start transaction|begin|work|commit [work][and [no] chanin] [[no] release] rollback [work] [and [no] chain] [[no] release] set autocommit =
a查b改
檢視事務隔離級別:select @@global.tx_isolation
共享鎖(s):粒度是行或者元組(多個行),獲取該鎖,可執行讀操作
排他鎖(x):粒度是行或者元組(多個行),獲取該鎖,可執寫讀操作
如果a有共享鎖,則不可同時加排他鎖,可同時加共享鎖
如果a有排他鎖,則不可同時加共享鎖,也不可同時加共享鎖
3. 意向鎖:粒度是整張表
表鎖:開銷小,允許併發量最小 - myisam
行鎖:允許併發量最大,- innodb
eg:select ... lock in share mode
``select … for update
資料庫 資料庫基礎
什麼是sql 結構化查詢語言 structtured query language sql的作用 啟動mysql.exe,連線伺服器後,就可以使用sql來操作伺服器了。類似php中操作mysql的語句就是sql語句 sql標準 由國際標準化組織 iso 制定的,對dbms 資料庫管理系統 的統一操作...
22 定時備份資料庫
1.解決方案 定時備份資料庫的解決方案大致上分為三個部分,首先是定時排程器,如windows平台上的定時計畫和linux平台上的crontab。其次是資料庫備份指令碼,如windows平台上的dos批處理指令碼和linux平台上的shell指令碼。最後是備份的sql語句,主要使用select int...
資料庫基礎 資料庫設計
一 資料庫生命週期 1.週期 需求分析,概念結構設計,邏輯設計,物理設計,系統實施,系統執行和維護。2.響應的文件 二 正規化 一般資料庫要求規範化到第三正規化,視具體需求重新調整。第一正規化 1nf 強調列的原子性,即列不能分為多列。第二正規化 2nf 關係屬於第一正規化,且每乙個非主屬性完全函式...