成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何在MySQL中使用存儲結構

這期內(nèi)容當中小編將會給大家?guī)碛嘘P如何在MySQL中使用存儲結構,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供雙灤網(wǎng)站建設、雙灤做網(wǎng)站、雙灤網(wǎng)站設計、雙灤網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、雙灤企業(yè)網(wǎng)站模板建站服務,十余年雙灤做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。

1.新建兩張數(shù)據(jù)表:student1, student2

新建student1

DROP TABLE IF EXISTS student1;
CREATE TABLE student1 (
id INT NOT NULL auto_increment,
name TEXT,
age INT,
PRIMARY KEY(id)
);

新建student2

DROP TABLE IF EXISTS student2;
CREATE TABLE student2 (
id INT NOT NULL auto_increment,
name TEXT,
age INT,
PRIMARY KEY(id)
);

2.向student1中新增數(shù)據(jù)

INSERT INTO student1 (name, age) VALUES ('xiaoming', 18);
INSERT INTO student1 (name, age) VALUES ('xiaohong', 17);
INSERT INTO student1 (name, age) VALUES ('xiaogang', 19);
INSERT INTO student1 (name, age) VALUES ('xiaoyu', 18);
INSERT INTO student1 (name, age) VALUES ('xiaohua', 20);

實現(xiàn)功能說明

1.打印student1中的部分信息

2.把student1中的部分數(shù)據(jù)復制到student2中

3.傳入?yún)?shù)作為限制條件,把student1中的部分數(shù)據(jù)復制到student2中

注意事項

在編寫存儲結構的時候,我們不能以分號(;)結束。因為我們的SQL語句就是以分號(;)結尾的。這里我們要修改一下存儲結構的結束符號(&&)。

這里我們使用MySQL中的DELIMITER進行修改,并在存儲結構創(chuàng)建完畢時,再改為分號(;)結束即可。

關于這一點在后面的例子中有所體現(xiàn)。在編寫MySQL的觸發(fā)器中,也會用到類似的情況。

使用方式

1.打印student1中的部分信息

---------------------------------------------------------------
DROP PROCEDURE IF EXISTS test_pro1;
---------------------------------------------------------------
DELIMITER &&
CREATE PROCEDURE test_pro1()
BEGIN
 set @sentence = 'select * from student1 where age<19;';
 prepare stmt from @sentence;
 execute stmt;
 deallocate prepare stmt;
END &&
DELIMITER ;

2.復制表存儲過程的編寫(不帶參數(shù))

---------------------------------------------------------------
DROP PROCEDURE IF EXISTS test_pro2;
---------------------------------------------------------------
DELIMITER &&
create procedure test_pro2()
begin
  DECLARE stop_flag INT DEFAULT 0;
  DECLARE s_name TEXT default '';
  DECLARE s_age INT default 0;
  DECLARE cur1 CURSOR FOR (select name, age from student1 where age<19);
    DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET stop_flag=1;
  open cur1;
    fetch cur1 into s_name, s_age;
  while stop_flag<>1 DO
    insert into student2(name, age) values(s_name, s_age);
    fetch cur1 into s_name, s_age;
  end while;
  close cur1;
end &&
DELIMITER ;

3.復制表存儲過程的編寫(帶參數(shù))

---------------------------------------------------------------
DROP PROCEDURE IF EXISTS test_pro3;
---------------------------------------------------------------
DELIMITER &&
create procedure test_pro3(IN p_age INT)
begin
  DECLARE stop_flag INT DEFAULT 0;
  DECLARE s_name TEXT default '';
  DECLARE s_age INT default 0;
  DECLARE cur1 CURSOR FOR (select name, age from student1 where age<p_age);
    DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET stop_flag=1;
  open cur1;
    fetch cur1 into s_name, s_age;
  while stop_flag<>1 DO
    insert into student2(name, age) values(s_name, s_age);
    fetch cur1 into s_name, s_age;
  end while;
  close cur1;
end &&
DELIMITER ;

這里的SQLSTATE '02000'和NOT FOUND系統(tǒng)返回值是一樣的。

4.使用方式

call test_pro1();

or

call test_pro1(123);

上述就是小編為大家分享的如何在MySQL中使用存儲結構了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

標題名稱:如何在MySQL中使用存儲結構
本文URL:http://jinyejixie.com/article26/iiesjg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站營銷網(wǎng)站排名、網(wǎng)站維護、響應式網(wǎng)站網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
亚东县| 苗栗市| 九龙县| 仁寿县| 甘谷县| 清涧县| 富民县| 溆浦县| 郯城县| 龙泉市| 高碑店市| 荃湾区| 綦江县| 巴林左旗| 大荔县| 大宁县| 罗江县| 车致| 洛宁县| 西昌市| 崇文区| 九台市| 九寨沟县| 女性| 内乡县| 千阳县| 青铜峡市| 静乐县| 化隆| 太仆寺旗| 灵璧县| 嘉兴市| 乌拉特中旗| 天气| 竹北市| 易门县| 丹凤县| 怀集县| 京山县| 弋阳县| 长治县|