> 데이터 베이스 > MySQL 튜토리얼 > mysql使用游标将select结果插入其他表中

mysql使用游标将select结果插入其他表中

WBOY
풀어 주다: 2016-06-07 14:57:29
원래의
1216명이 탐색했습니다.

mysql使用游标将select结果插入其他表中 无 BEGIN#定义 变量DECLARE a VARCHAR(32);DECLARE b VARCHAR(200);DECLARE c text ;DECLARE d VARCHAR(32);DECLARE e VARCHAR(100);DECLARE f int(11);DECLARE g VARCHAR(100);DECLARE h VARCHAR(100);#此变可有可无

mysql使用游标将select结果插入其他表中
BEGIN
#定义 变量
DECLARE a VARCHAR(32);
DECLARE b VARCHAR(200);
DECLARE c text ;
DECLARE d VARCHAR(32);
DECLARE e VARCHAR(100);
DECLARE f int(11);
DECLARE g VARCHAR(100);
DECLARE h VARCHAR(100);

#此变可有可无,为了给个该存储函数执行成功后给个提示,运行下便知道
DECLARE count_num int(11);
DECLARE x int;

#这个用于处理游标到达最后一行的情况
DECLARE s int default 0;

#声明游标cursor_name(cursor_name是个多行结果集)
DECLARE cursor_name CURSOR FOR select NNF_ID,NNF_NAME,NNF_REALNAME,NNF_NOTICE_ID from t_notice_file;

#设置一个终止标记 
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s=1;
set count_num = 0;
				
#打开游标
OPEN cursor_name;

#获取游标当前指针的记录,读取一行数据并传给变量a,b
fetch  cursor_name into a,b,c,d;
					
#开始循环,判断是否游标已经到达了最后作为循环条件 
while s <> 1 do
set count_num =  count_num+1;
insert into t_ehdnotice_file(id,name,original_name,create_time,ehdnotice_id,path) values(a,b,c,now(),d,'2014-04\\15');
							
#读取下一行的数据
fetch  cursor_name into a,b,c,d;
end while;
				 
#关闭游标
CLOSE cursor_name ;
select count_num as"新增条数";

#语句执行结束
END
로그인 후 복사
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿