午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

mysql代碼執行結構實例分析【順序、分支、循環結構】

瀏覽:23日期:2023-10-15 13:37:29

本文實例講述了mysql代碼執行結構。分享給大家供大家參考,具體如下:

本文內容: 什么是代碼執行結構 順序結構 分支結構 循環結構

首發日期:2018-04-18

什么是代碼執行結構: 這里所說的代碼執行結構就是多條sql語句的執行順序。 代碼執行結構主要用于觸發器、存儲過程和函數等存儲多條sql語句中。順序結構: 順序結構就是從上到下依次執行sql語句 一般默認情況下都是順序結構分支結構: 分支結構的執行是依據一定的條件選擇執行路徑,它會依據我們給定的條件來選擇執行那些sql語句 mysql中分支結構只有if-else: 語法:

if 條件 then sql語句[elseif 條件 then sql語句][else sql語句]end if; 示例:

-- create table pass(id int primary key auto_increment,name varchar(15),score int );create table unpass(id int primary key auto_increment,name varchar(15),score int);-- 使用存儲過程來create procedure myif(in name varchar(15),in score int)begin if score >=60 then insert into pass(name,score) values(name,score); else insert into unpass(name,score) values(name,score); end if;end;-- 調用,并查看結果call myif('lilei',61);call myif('hanmeimei',95);select * from pass;select * from unpass;call myif('tuhao',59);select * from unpass; if中的條件基本可以參照select語句的while子句的條件。什么innot in = != 等都可以用。

create procedure myif3(in a char(1))begin if a in(’a’,’b’) then select 1; else select 2; end if;end;call myif3(’a’);call myif3(’b’);call myif3(’c’); 補充: 理論上,如果做出判斷不符合,然而又不想繼續執行下去的時候,應該執行返回(比如C語言的return來中斷函數運行),但mysql中并沒有對應的中斷機制,所以需要我們主動中斷(中斷的方法有很多種,比如執行一條符合語法但無法運行的語句)【這種場景比如有:判斷一名學生是否存在,不存在就不執行任何操作,所以應該執行一條無法成功運行的語句來報錯返回。】 事實上,還存在一種分支結構:case when 【好像好多書都沒怎么講到,所以這里不講述。有興趣的可以自行百度。】循環結構: 循環結構是指在程序中需要反復執行某個功能而設置的一種程序結構。mysql中循環結構用于循環多次運行同一sql語句。 mysql中的循環結構有loop結構、while結構、repeat結構,這里只講述while結構,有興趣了解其他的可以自行百度。 mysql代碼執行結構實例分析【順序、分支、循環結構】 語法:

while 條件 do sql語句end while; 學過其他語言的可能會了解到循環結構中有continue(提前結束此次循環)和break(跳出整個循環) 在mysql的循環結構中,使用leave來代替break,使用iterate來代替continue,但它們的使用語法是:leaveiterate 循環名,所以如何定義循環名呢?

循環名:while 條件 do sql語句; leaveiterate 循環名;end while; 示例:

-- 無意義的一個例子,僅作演示create table whilenum(id int);-- 自帶條件的create procedure mywhile()begin declare num int; set num=10; c1:while num>0 do insert into whilenum values(num); set num=num-1; end while;end;-- 以傳入參數作為條件的create procedure mywhile2(in num int)begin c1:while num>0 do insert into whilenum values(num); set num=num-1; end while;end;-- 帶中斷的create procedure mywhile3(in num int)begin c1:while num>0 do if num%2=0 then set num=num-1; iterate c1; end if; insert into whilenum values(num); set num=num-1; end while;end;

更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》、《MySQL數據庫鎖相關技巧匯總》及《MySQL常用函數大匯總》

希望本文所述對大家MySQL數據庫計有所幫助。

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 亚洲精品久久久久久久久久久久久 | 亚洲激情文学 | 亚洲精品一区二区在线 | 91不卡视频 | 青青草视频免费 | 成人毛片100免费观看 | 性涩av | 国产日韩一区二区 | 亚洲成人高清 | 欧美日黄| 国产黄色在线观看 | 欧美一区二区三区啪啪 | 精品xxx | 亚洲区av| 亚洲精品1区2区 | 亚洲vs天堂 | 欧美另类极品 | 欧美一级色片 | 黄色小视频在线免费观看 | 天天干天天干天天操 | 国产中文在线播放 | 午夜看片网 | 91精品国产一区二区三区蜜臀 | 日韩在线观看网站 | 超碰2021 | 精品久久久久久久久久久aⅴ | 操韩国美女 | 性色av一区二区三区 | 欧美色淫 | 欧美 日韩 成人 | xxx日本黄色 | 看免费的毛片 | 日韩精品在线免费 | 国产乱人伦精品一区二区 | 懂色av成人一区二区三区 | 免费一级特黄特色大片 | 怡春院国产 | 亚洲天堂三区 | 中文有码在线播放 | 1区2区3区视频 | 婷婷6月天 |