《Mysql必讀mysql動(dòng)態(tài)游標(biāo)與mysql存儲(chǔ)過程游標(biāo)(示例)》要點(diǎn):
本文介紹了Mysql必讀mysql動(dòng)態(tài)游標(biāo)與mysql存儲(chǔ)過程游標(biāo)(示例),希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
-- 樹立測(cè)試表和數(shù)據(jù)
create table webuser (username varchar(10));
insert into webuser values ('a1'),('a2'),('a3'),('b1'),('b2'),('b3');
commit;MYSQL學(xué)習(xí)
-- 建立存儲(chǔ)進(jìn)程
drop procedure if exists dynamic_cursor;
delimiter // www.jbxue.com
CREATE PROCEDURE dynamic_cursor (IN p_name varchar(10))
BEGIN
??? DECLARE done INT DEFAULT 0;
??? DECLARE v_username varchar(10);
??? DECLARE cur CURSOR for( SELECT username from webuser_view);
??? DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;MYSQL學(xué)習(xí)
??? DROP VIEW IF EXISTS webuser_view;MYSQL進(jìn)修
??? SET @sqlstr = "CREATE VIEW webuser_view as ";
??? SET @sqlstr = CONCAT(@sqlstr , "SELECT username FROM webuser WHERE username like '", p_name,"%'");MYSQL進(jìn)修
??? PREPARE stmt FROM @sqlstr;
??? EXECUTE stmt;
??? DEALLOCATE PREPARE stmt;MYSQL進(jìn)修
??? OPEN cur;
??? f_loop:LOOP
??? FETCH cur INTO v_username;
??? IF done THEN
??????? LEAVE f_loop;?
??? END IF;
??? SELECT v_username;???
??? END LOOP f_loop;
??? CLOSE cur;
END;
//
delimiter ;MYSQL進(jìn)修
-- 測(cè)試
call dynamic_cursor('a');MYSQL進(jìn)修
維易PHP培訓(xùn)學(xué)院每天發(fā)布《Mysql必讀mysql動(dòng)態(tài)游標(biāo)與mysql存儲(chǔ)過程游標(biāo)(示例)》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/13684.html