中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql 存儲過程的創建

發布時間:2020-07-15 08:47:50 來源:網絡 閱讀:406 作者:hagretd 欄目:MySQL數據庫
  1. 注:
    (1)這里需要注意的是DELIMITER //和DELIMITER ;兩句,DELIMITER是分割符的意思,因為MySQL默認以";"為分隔符,如果我們沒有聲明分割符,那么編譯器會把存儲過程當成SQL語句進行處理,則存儲過程的編譯過程會報錯,所以要事先用DELIMITER關鍵字申明當前段分隔符,
    這樣MySQL才會將";"當做存儲過程中的代碼,不會執行這些代碼,用完了之后要把分隔符還原。
    (2)存儲過程根據需要可能會有輸入、輸出、輸入輸出參數,這里有一個輸出參數s,類型是int型,如果有多個參數用","分割開。
    (3)過程體的開始與結束使用BEGIN與END進行標識。
    這樣,我們的一個MySQL存儲過程就完成了,是不是很容易呢?看不懂也沒關系,接下來,我們詳細的講解。
    (2). 聲明分割符
    其實,關于聲明分割符,上面的注解已經寫得很清楚,不需要多說,只是稍微要注意一點的是:如果是用MySQL的Administrator管理工具時,可以直接創建,不再需要聲明。
    (3). 參數
    MySQL存儲過程的參數用在存儲過程的定義,共有三種參數類型,IN,OUT,INOUT,形式如:
    CREATE PROCEDURE([[IN |OUT |INOUT ] 參數名 數據類形...])
    IN 輸入參數:表示該參數的值必須在調用存儲過程時指定,在存儲過程中修改該參數的值不能被返回,為默認值
    OUT 輸出參數:該值可在存儲過程內部被改變,并可返回
    INOUT 輸入輸出參數:調用時指定,并且可被改變和返回

  2. 循環插入數據

delimiter $$
drop procedure if exists test;
create procedure test (num int)
begin
declare  i int default 1;
while i<=num do
insert into test values (i,concat('test',i));
set i=i+1;
end while;
end $$
#concat 信息連接符

  1. 測試插入數據

    delimiter $$
    create procedure zy (v1 int,v2 varchar(20),v3 varchar(20))
    begin
    insert into zy values (v1,v2,v3);
    end $$

  2. 查看數據庫的存儲過程

    show procedure status where  db=''/name='';

  3. 調用存儲

    call test(xx);

  4. 查詢創建存儲的腳本

    show create procedure name;

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西峡县| 忻城县| 石门县| 永泰县| 金华市| 沧州市| 保山市| 平顶山市| 崇礼县| 泽库县| 波密县| 莱西市| 且末县| 北京市| 嘉善县| 利津县| 奉节县| 阜城县| 新泰市| 梁河县| 新乐市| 徐州市| 徐汇区| 集安市| 芮城县| 满洲里市| 寻乌县| 微山县| 太谷县| 台中县| 贞丰县| 电白县| 长泰县| 额敏县| 静乐县| 资中县| 云和县| 桂阳县| 酒泉市| 侯马市| 福安市|