《MySQL必知必會》讀書筆記 4

2022-02-02 16:56:53 字數 3213 閱讀 2184

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

語句,而是被該語句檢索出來的結果集。在儲存了游標之後,應用程式可以根據需要滾動或瀏覽其其中的資料。

create

procedure

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...