create or replace procedure SP_test_3 ( V_systab IN varchar2)
AS
Begin
execute immediate 'insert into LoginInfo_1(UserSN,ServerNum,Time,Type,IP)
select UserSN,ServerNum,Time,Type,IP
from '|| V_systab || '
) b';
END SP_test_3;SQL> exec SP_test_3(logininfo100);
begin SP_test_3(logininfo100); end;
ORA-06550: line 2, column 17:
PLS-00357: Table,View Or Sequence reference 'LOGININFO100' not allowed in this context
ORA-06550: line 2, column 7:
PL/SQL: Statement ignored
怎么回事?
AS
Begin
execute immediate 'insert into LoginInfo_1(UserSN,ServerNum,Time,Type,IP)
select UserSN,ServerNum,Time,Type,IP
from '|| V_systab || '
) b';
END SP_test_3;SQL> exec SP_test_3(logininfo100);
begin SP_test_3(logininfo100); end;
ORA-06550: line 2, column 17:
PLS-00357: Table,View Or Sequence reference 'LOGININFO100' not allowed in this context
ORA-06550: line 2, column 7:
PL/SQL: Statement ignored
怎么回事?
exec SP_test_3('logininfo100');
begin SP_test_3('logininfo100'); end;
ORA-00933: SQL command not properly ended
ORA-06512: at "ODS.SP_TEST_3", line 4
ORA-06512: at line 2
CREATE OR REPLACE PROCEDURE SP_TEST_3(V_SYSTAB IN VARCHAR2) AS
BEGIN
EXECUTE IMMEDIATE 'INSERT INTO LOGININFO_1(USERSN,SERVERNUM,TIME,TYPE,IP)
SELECT USERSN,SERVERNUM,TIME,TYPE,IP
FROM ' || V_SYSTAB || ' ';
END SP_TEST_3;
select UserSN,ServerNum,Time,Type,IP
from '|| V_systab || '
) b';CREATE OR REPLACE PROCEDURE SP_TEST_3(V_SYSTAB IN VARCHAR2) AS
BEGIN
EXECUTE IMMEDIATE 'INSERT INTO LOGININFO_1(USERSN,SERVERNUM,TIME,TYPE,IP) SELECT USERSN,SERVERNUM,TIME,TYPE,IP FROM ' || V_SYSTAB || ' ';
END SP_TEST_3;