1.語句塊包含符:相當於js或php中的大括號語法:
【標識符:】begin
//語句
end 【標識符】;
標識符就是定義的任意的名字,比如:
If(條件判斷)
A:begin
//語句
end A;
A就是標識符,作用是標識該語句塊,以期可以在該語句塊中使用它---其實就是退出
2.流程控制語句
If語句:
If(條件判斷) then
begin
//語句
end;
else if(條件判斷)then
begin
//語句
end;
end if
Case語句:相當於switch……case語句,語句塊用beginend結構包起來
形式一:
Case case_value
When when_value then 語句塊
【When when_value then 語句塊】
【else 語句塊】
End case;
示意:
Case @v1(表示一個變量)
When 1 then
Begin
//語句
End;
When 2 then
Begin
//語句
End;
Else
Begin
//語句
End;
End case;
形式二:
Case
When 條件語句 then 語句塊
【When 條件語句 then 語句塊】
【else 語句塊】
End case;
示意:
Case
When @v1>0 then
Begin
//語句
End;
When @v1<0then
Begin
//語句
End;
Else
Begin
//語句
End;
End case;
Loop循環語句:
標識符:loop
循環語句塊(必須有退出循環的邏輯機制,如:
If 條件 then
Leave 標識符;
End if;)
End loop 標識符;
While語句
【標識符:】while 條件 do
語句塊
End while 【標識符】
舉例
Set @v1=1;//賦值語句
While @v1<10 do
Begin
Insert into tab1 (id,num)values(null,@v1);
Set @v1=@v1+1;
End
End while;
Repeat語句
【標識符:】repeat
循環語句塊
Until 循環條件
End repeat 【標識符】
舉例:
Set @v1=1;//賦值語句
repeat
Begin
Insert into tab1 (id,num)values(null,@v1);
Set @v1=@v1+1;
End;
Until @v1>9;
End repeat;
Leave語句:
Leave 標識符;//用來退出begin end結構或其他具有標識符的結構
3.變量
有兩種變量形式:
普通變量:不帶@符號;
定義形式:declare 變量名類型名 【default 默認值】;//普通變量必須先這樣定義
賦值形式:Set 變量名=值;
取值:直接使用變量名
使用場所:只能在編程環境(定義函數的內部、定義存儲過程的內部、定義觸發器的內部)中使用
會話變量:帶@符號;
定義形式:
Set@變量名=值;//跟php類似,無須定義,直接賦值
取值:直接使用變量名
使用場所:基本上哪裏都可以用
變量賦值的其他形式:
Select @變量名:=表達式;//給變量賦值,並作爲結果集輸出
Select 表達式 into @變量名;//只是給變量賦值,不輸出結果集