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

如何在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)化
黄大仙区| 弋阳县| 田东县| 台中市| 大洼县| 肥东县| 驻马店市| 甘孜县| 建德市| 昔阳县| 乐亭县| 东城区| 永和县| 东城区| 防城港市| 额济纳旗| 阿克| 竹溪县| 章丘市| 黄龙县| 县级市| 东丰县| 安化县| 黄浦区| 双峰县| 白银市| 巢湖市| 忻城县| 伊宁县| 沙雅县| 静安区| 壶关县| 江源县| 吴忠市| 芦山县| 孟津县| 星子县| 奉化市| 三门县| 静乐县| 特克斯县|