ps:乙個實際的儲存過程案例
create definer=`root`@`localhost` procedure `sp_delete_article_by_id`(in `id` int)begin
#routine body goes here...
declare
temp
int;
set@aid
=id;
select
count(*) from gk_reply_article where a_id =
@aid
into
temp
;if(temp
<>
0) then
delete
from gk_reply_article where a_id =
@aid
;endif;
select
count(*) from gk_like_article where a_id =
@aid
into
temp
;if(temp
<>
0) then
delete
from gk_like_article where a_id =
@aid
;endif;
select
count(*) from gk_article where id =
@aid
into
temp
;if(temp
<>
0) then
delete
from gk_article where id =
@aid
;endif;
end
游標是乙個儲存在mysql伺服器上的資料庫查詢,它不是一條
select
語句,而是被該語句檢索出來的結果集。在儲存了游標之後,應用程式可以根據需要滾動或瀏覽其其中的資料。
createprocedure
processorders()
begin
declare o int
;declare ordernumbers cursor
#定義和命名游標
forselect order_num from
orders;
open
ordernumbers; #開啟游標
fetch ordernumbers into
o;close
ordernumbers; #關閉游標
end
隱含關閉:如果你不明確關閉游標,mysql將會在達到
end語句時自動關閉它。
觸發器唯一的命名
觸發器關聯的表
觸發器一響應的活動:update、
insert
或update
觸發器何時執行
只有表才支援觸發器,檢視不支援
事務處理,可以用來維護資料庫的完整性,它保證成批的mysql
操作要麼完全執行,要麼完全不執行。
mysql是用一系列的預設設定預先配置的,這些設定通常在開始的時候很好用。但是一段時間後你可能需要調整記憶體、緩衝區大小等。(為檢視當前設定,可使用
show variables;
和show status;
)如果遇到顯著的效能不良,可使用show processlist
顯示所有活動程序,還可以用
kill
命令終結某個特定的程序。
mysqldump資料備份:
1.匯出整個資料庫mysqldump -u
使用者名稱
-p 資料庫名
>
匯出的檔名
2.匯出乙個表mysqldump -u
使用者名稱
-p 資料庫名 表名
>
匯出的檔名
3.3.匯出乙個資料庫結構
沒有資料
--add-drop-table
在每個create
語句之前增加乙個
drop table
假設我們的任務是要備份乙個位於192.168.1.2
伺服器上,名稱為
backup_test
的資料庫,並把備份檔案放到
d:\bak\
的資料夾中。又假設我們的作業系統為
windows xp
,於是我們可以用以下的方法執行備份操作:我們可以使用
windows
自帶的命令提示符(呼叫命令提示符的方法有多種,最常用的就是點選開始選單,選擇「執行」,輸入
cmd的命令就可以啟動了),在命令提示符中輸入以下命令:
mysqldump -u backup -p 123456 -h 192.168.1.2 backup_test > d:\bak\bakcup.sql在這段命令中:
mysqldump
是myqldump
的程式名了;-u 是資料庫的使用者名稱,後面緊跟著使用者名稱
backup
;-p
是資料庫的密碼,後面同樣緊跟著密碼,注意是
-p和密碼之間不能有空格;
-h 是資料庫的位址,如果沒有此項表明是備份本地的資料庫;
backup_test
要備份的資料庫名稱;
> 表明該資料庫備份到後面的檔案,緊跟當然是備份檔案的位址了,注意要用絕對檔案路徑,檔案的字尾也可以用
.txt
。一旦執行該命令後,
mysqldump
立即執行備份操作。遠端備份資料庫要似乎網路的情況,一般遠端備份需要一定的時間的。
或者使用mysqlhotcopy。
backuo table 或
select into outfile
轉儲所有資料到某個外部檔案。
為保證所有資料都被寫到磁碟,可能需要在進行備份前使用flush tables語句。
#維護資料庫,顯示資料庫表狀態
analyze table gk_article
#發現和修復表問題
check table gk_article
#顯示所有可用的字符集以及每個字符集的描述和預設校對。
show character set
#顯示所有可用校對
show collation
預設埠:3306
終結
mysql必知必會 讀書筆記
一.show命令 1.使用命令列 管理員方式 啟動mysql服務 net start mysql57 mysql57為安裝時取得名字 2.登陸本地mysql資料庫 mysql uroot p 3.顯示已有的資料庫 show databases 4.使用某資料庫 use users 5.先使用4命令 ...
《C 必知必會》讀書筆記4
int f 乙個返回值為int 的函式 int f 乙個函式指標,指向乙個返回型別為int的並且無引數的函式 const int n 12 int a n 首先,提醒這段 在c中不行。這個是乙個具有n個int 元素的陣列 int a n 乙個指標,指向乙個具有n個int元素的陣列。int p n 乙...
MySQL必知必會讀書筆記二
暫時只更到檢視之前的內容了 後續的東西有機會再補 插入資料 insert into customers cust address,cust city,cust state,cust zip,cust country,cust contact,cust email values pep e 100 m...