解决方案 »
- oracle里的 “” 和 NULL 有没有区别呢??
- oracle 动态表 数据插入
- dts 将oracle数据导入到sql server 出现快照过旧错误
- 官网上下的linux10的Linux版本是否可以不限制节点免费使用?
- Oracle 大侠:用sys登陆报错: "java.lang.Exception: No such metric"
- 有没有方法使得表在做update和delete后不提升水位?
- 服务上的OracleOraHomeAgent无法启动
- 有谁知道数据库管理工具TOAD等软件下载地址
- 关于oracle存储过程数组返回的问题
- spool导数据到文本时要设置分页行数才能导域标题
- 表的索引
- 如何用max函数比较多表多列的最大值?
for example:select col1,col2,testp1p2 from t1 full outer join
(select test(p1,p2) testp1p2 from t1 )t2
http://topic.csdn.net/u/20080305/14/9b30ab0a-3da2-477b-918e-e6473520d8f9.html
还有就是你的function 里面可能有事务性的操作
2.无事务性操作.函数体如下:
CREATE OR REPLACE FUNCTION "PROJECTPLANACTORS"
(sProjectID in varchar2,sActionID in varchar2)
return varchar2 as
sReturnValue varchar2(32000);
sTemp varchar2(20);
cursor cu1(p1 varchar2,p2 varchar2)
is select b.USERCNAME from pdwfd17 a inner join asreg005 b on a.Actor = b.userid
where a.procaseid=p1 and a.actionid=p2;
begin
open cu1(sProjectID,sActionID);
sReturnValue:='';
loop
fetch cu1 into sTemp;
exit when cu1%notfound;
if length(sReturnValue) > 0 then
sReturnValue:= sReturnValue || ',';
end if;
sReturnValue:=sReturnValue || sTemp;
end loop;
close cu1;
return(sReturnValue);
end ProjectPlanActors;
sReturnValue:='';是多余的
最后把cursor的参数写死试试,不要动态传入参数如果还是不行,可以去找一下如何用一句sql得到你要的结果(有很多人问,很多人回答)
这样问题就没有了
IN (
SELECT *
FROM TABLE (
CAST (HWE00080SP.FN_SPLIT (IN_TP_HWE00080_KSKIN_ARR(i).KMKCD1, ';') AS TP_HWE00080_STR_ARR
)
));