oracle´æ´¢¹ý³ÌµÄ¶¯Ì¬Óαê³ö´í - Oracle / ¿ª·¢
create or replace procedure prc
AS
sqlstr varchar2(3000);
type resultcur is ref cursor;
begin
sqlstr := ¡®select * from tableÃû where Ìõ¼þ¡¯;
open resultcur for sqlstr; ---´Ë´¦±¨´í
......
end prc;
Compilation errors for PROCEDURE PRC
Error: PLS-00330: invalid use of type name or subtype name
Line: 148
Text: open resultcur for sqlstr;
ÇëÎÊ´óÏÀÃÇ£¬ÕâÊÇʲô´íÎó£¬Ôõô½â¾ö£¬Çë´Í½Ì£¡
SQL code:
-- ¸ø¸öÀý×Ó¸øÄ㣬×Ô¼º¿´×Űì°É£º
-----------------------------------------------------------------------------
create or replace package pkg_emp_info
as
type myrctype is ref cursor;
procedure emp_info_proc(v_empno in number default 0,v_ename in VARCHAR2, v_deptno number default 0,p_rc out myrctype);
end pkg_emp_info;
/
create or replace package body pkg_emp_info
as
procedure emp_info_proc(v_empno in number default 0,v_ename in VARCHAR2, v_deptno number default 0,p_rc out myrctype)
is
sqlstr VARCHAR2(2000);
begin
sqlstr :=
'SELECT * from emp e where 1=1';
if v_empno<>0 then
sqlstr := sqlstr||' and e.empno='||v_empno;
end if;
if v_ename<>'' then
sqlstr := sqlstr||' and e.ename like ''%||v_ename||%''';
end if;
if v_deptno<>0 then
sqlstr := sqlstr||' and e.deptno='||v_deptno;
end if;
Ïà¹ØÎÊ´ð£º
ÎÒÊÇÓÃÔ¶³Ì×ÀÃæÁ¬²Ù×÷·þÎñÆ÷ÉϵÄÊý¾Ý¿â¡£
ÔÚ´´½¨Ò»¸öÓû§Ö®ºó£¬ÔÙÓÃPLSQLµÇ¼£¬ÔòPLSQLËÀµôÁË¡£
ÎҹصôPLSQLÖ®ºó£¬ÓÃÆäËûÓû§Ò²²»ÄܵǼ¡£
ÎÒ°ÑoracleµÄ·þÎñÍ£Ö¹£¬½á¹û¾ÍÊÇoracleµÄ·þÎñ״̬¾ÍÍ£ÁôÔÚ¡°Í ......
SQL code:
CREATE OR REPLACE PROCEDURE usp_refreshTopN IS
BEGIN
--Îĵµ
INSERT INTO topnresource(resourceId,title,type,cover,brief,properUser,tag,clickAmount,createDate,topNCreateDate,organizat ......
ͨ¹ýNAME×Ö¶ÎÌõ¼þ²éѯһ¸öÊý¾Ý±í£¬¼ÙÉèÎÒÓÐ100¸öÐÕÃû£¬ÓÐÒÔÏÂÁ½¸ö·½·¨£¬
·½·¨1£º
°Ñ100¸öName ×é³ÉÒ»¸öSQLÓï¾ä£¬±ÈÈç Select * from tmp_table where Name='ÕÅÈý' or Name ='ÀîËÄ' Or ...Or Name='µÚÒ»°Ù¸öÐÕÃû'
......
½ñÌìÓöµ½Ò»¸öºÜ¹îÒìµÄÎÊÌâ¡£ÎÒÔÚÒ»ÕűíÖÐÐÂÔöÁËÒ»¸ö×ֶΡ£È»ºóÓÃÈçϽű¾¸üÐÂÕâ¸ö×ֶεÄÖµ£º
SQL code:
update ibp_fund_information_tab set yield = 7.4520 where fund_code = '040003' and info_date = ......