
ORACL使用两个游标,并拼接起来作变量名,要怎么写
DECLARECURSORCUR_EMPISSELECT*FROMF_CARD;BEGINFORROW_EMPINCUR_EMPLOOPDECLARECURSORCUR_...
DECLARE
CURSOR CUR_EMP IS SELECT * FROM F_CARD;
BEGIN
FOR ROW_EMP IN CUR_EMP LOOP
DECLARE
CURSOR CUR_EMP2 IS
SELECT TABLE_NAME,
COLUMN_NAME
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME='F_CARD'
ORDER BY COLUMN_NAME ;
BEGIN
FOR ROW_EMP2 IN CUR_EMP2 LOOP
--这边 求F_CARD字段中有以#开头的内容
IF ROW_EMP.ROW_EMP2.COLUMN_NAME LIKE '#%' THEN
DBMS_OUTPUT.PUT_LINE(ROW_EMP2.COLUMN_NAME || ' IS ' || ROW_EMP.ROW_EMP2.COLUMN_NAME);
END IF;
END LOOP;
CLOSE CUR_EMP2;
END;
END LOOP;
CLOSE CUR_EMP;
END;
这要怎么写,急急,求指导
Oracle 展开
CURSOR CUR_EMP IS SELECT * FROM F_CARD;
BEGIN
FOR ROW_EMP IN CUR_EMP LOOP
DECLARE
CURSOR CUR_EMP2 IS
SELECT TABLE_NAME,
COLUMN_NAME
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME='F_CARD'
ORDER BY COLUMN_NAME ;
BEGIN
FOR ROW_EMP2 IN CUR_EMP2 LOOP
--这边 求F_CARD字段中有以#开头的内容
IF ROW_EMP.ROW_EMP2.COLUMN_NAME LIKE '#%' THEN
DBMS_OUTPUT.PUT_LINE(ROW_EMP2.COLUMN_NAME || ' IS ' || ROW_EMP.ROW_EMP2.COLUMN_NAME);
END IF;
END LOOP;
CLOSE CUR_EMP2;
END;
END LOOP;
CLOSE CUR_EMP;
END;
这要怎么写,急急,求指导
Oracle 展开
推荐于2016-09-10
展开全部
--同天、同机构、同类型 扣分 只扣一条
create or replace function get_lzkh_kfjfxq(sqls in varchar2,kfrq in varchar2)
RETURN varchar2 IS
Result varchar2(4000);--返回值
idstr varchar2(80);--接受游标遍历的id值的变量
--创建游标(只包含id的游标)
cursor cur_lzkh is
select id
from lzkh_kfjfxq
where kfjfrq||jgm||kfjfms= sqls and kfjfrq=kfrq;--参数sqls 是 kfjfrq||jgm||kfjfms
begin
Result :='';
open cur_lzkh;
--idstr赋值
fetch cur_lzkh into idstr;
--遍历游标
WHILE cur_lzkh%FOUND LOOP
--拼接id
Result := Result || idstr || ',';
end loop;
--去掉最后一个逗号(,)
Result :=substr(Result,1,LENGTH(Result)-1);
close cur_lzkh;
RETURN (Result);
end get_lzkh_kfjfxq;
create or replace function get_lzkh_kfjfxq(sqls in varchar2,kfrq in varchar2)
RETURN varchar2 IS
Result varchar2(4000);--返回值
idstr varchar2(80);--接受游标遍历的id值的变量
--创建游标(只包含id的游标)
cursor cur_lzkh is
select id
from lzkh_kfjfxq
where kfjfrq||jgm||kfjfms= sqls and kfjfrq=kfrq;--参数sqls 是 kfjfrq||jgm||kfjfms
begin
Result :='';
open cur_lzkh;
--idstr赋值
fetch cur_lzkh into idstr;
--遍历游标
WHILE cur_lzkh%FOUND LOOP
--拼接id
Result := Result || idstr || ',';
end loop;
--去掉最后一个逗号(,)
Result :=substr(Result,1,LENGTH(Result)-1);
close cur_lzkh;
RETURN (Result);
end get_lzkh_kfjfxq;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询