mysql 的存儲過程在 mysql.proc表里。 只上傳frm,MYI,MYD不能上傳procedure。你可以mysqldump --table mysql proc proc.sql -uroot -p 之后再到你的虛擬機中 source 目錄\proc.sql
目前成都創新互聯已為近1000家的企業提供了網站建設、域名、雅安服務器托管、網站托管、企業網站設計、臨汾網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。
如果想查看存儲過程的話:
show procedure status;
想看存儲過程代碼:
show create procedure procedure_name;
存儲過程存放在infomation_schema.ROUTINES表內。
假設A表有3個字段,ID, DATA1,DATA2
簡單的話可以不使用存儲過程,比如:
select * form A where ID in (select ID from A where DATA1 between 0 and 100)
如果你的應用比較復雜,在嵌套中還有復雜的運算,存儲過程可以如下例子:
CREATE PROCEDURE test(in_start int,in_end int)
BEGIN
DECLARE ids TEXT;
select GROUP_CONCAT(ID) into ids from A where DATA1 between in_start and in_end;
select * from A where FIND_IN_SET(ID,ids) 0;
END
注: in_start, in_end是DATA1的篩選范圍。 后面一個select直接返回一個表
直接用SQL和使用存儲過程各有利弊,存儲過程在你使用大量查詢及SQL運算的時候效率很高,而且存儲過程一旦寫入數據庫會被自動編譯運行速度比較快,而SQL是每次執行都需要被編譯一次的。但是存儲過程的調試比較麻煩,不像你使用編程語言和SQL的時候可以單步調試。而且如果沒有熟練掌握存儲過程的效率優化情況下,使用存儲過程可能比使用SQL更慢。
delimiter $$
mysql
mysql CREATE PROCEDURE myProc() //創建while循環的存儲過程 if分支語句示例
- BEGIN
-
- DECLARE i int;
- SET i=1;
- loop1: WHILE i=10 DO
- IF MOD(i,2)0 THEN /*Even number - try again*/
- SELECT CONCAT(i," is an odd number");
- END IF;
- SET i=i+1;
- END WHILE loop1;
- END$$
Query OK, 0 rows affected (0.00 sec)
這種也可以
網頁名稱:mysql存儲過程怎么找 mysql存儲過程查詢語句寫法
標題鏈接:http://vcdvsql.cn/article36/ddigjpg.html
成都網站建設公司_創新互聯,為您提供關鍵詞優化、全網營銷推廣、外貿網站建設、做網站、面包屑導航、營銷型網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯