MySQL 高階部分

2022-09-23 00:42:54 字數 1645 閱讀 7094

一、儲存過程

儲存過程是儲存在資料庫目錄中的一段宣告性sql語句,感覺其功能類似函式。

1.簡單的儲存過程

我們可以通過create procedure procedure_name 語句建立儲存過程,然後通過call procedure_name 語句呼叫儲存過程。

delimiter //

create

procedure

procedure_name( )

begin

select

*from

table_name

end//

delimiter ;

下面我們來詳細的說明上述儲存過程:

2.宣告變數

要在儲存過程中宣告一個變數,可使用declare 語句,其基本語法格式如下:

declare variable_name datetype( size ) default default_value;

宣告變數後,就可以開始使用變數了。我們可以使用set 語句為其分配值,也可以使用 select into 語句將查詢結果分配給一個變數.

例如,假設我們有一個產品表(products),我們宣告兩個變數 total_count 和 m,將totla_count賦值為10,將products表的資料個數賦值給m:

declare total_count,m int

default0;

set total_count =10;

select

count(*) into

mfrom products;

注意:變數有自己的範圍(作用域),它用來定義它的生命週期。 如果在儲存過程中宣告一個變數,那麼當達到儲存過程的end語句時,它將超出範圍,因此在其它**塊中無法訪問。

3.引數簡介

mysql中引數有三種模式:in、 out或inout

儲存過程中定義引數的語法如下:

mode param_name param_type( param_size )

根據儲存過程中引數的目的,mode可以是in、out或inout。

以下示例說明如何使用getofficecountry儲存過程中的in引數,來查詢選擇位於特定國家的辦公室。

use

yiibaidb;

drop

procedure

inexists

'getofficecountry';

delimiter $$

useyiibaidb $$

create

procedure getofficecountry( in countryname varchar(255

) )

begin

select

*from

offices

where country =

countryname;

end

$$delimiter ;

假設我們要查詢在美國(usa)的所有辦事處,只需要將引數uas傳遞給getofficecountry這個儲存過程,如下:

call getofficecountry('

usa');

nginx部分

nginx的一些配置可以訪問wiki nginx org裡面有中文文件 tar zxf nginx 1 2 7 tar gz cd nginx 1 2 7 cd src core 檢視版本 root server4 mysql curl i 163 com http 1 1 301 moved pe...

HTML部分

label標籤主要是方便滑鼠點選使用,擴大可點選的範圍,增強使用者操作體驗 重繪 某個元素的背景顏色,文字顏色等,不影響元素周圍或內部佈局的屬性,將只會引起瀏覽器的重繪。迴流 某個元素的尺寸發生了變化,則需重新計算渲染樹,重新渲染 迴流什麼時候發生? 新增或者刪除可見的dom元素 元素位置改變 元素尺...

部分類Partial

partial告訴編譯器,一個類,結構,介面的定義源 可能要分散到一個或者多個原始檔中。 在下面的情況下用partial型別 1 型別特別大...