2016-03-29 13 views
0

Ich möchte eine Prozedur oder einen Cursor schreiben. Eingabedaten - NAME OWNER. Wir kennen den Namen (OWNER) UND aus der Tabelle ALL_OBJECTS Nimm den Namen der Tabelle. Tabellen> 30. Wie schreibe ich richtig?Tabellen kopieren Schema in einem anderen Schema in Oracle


CREATE OR REPLACE PROCEDURE USER_NAME 
(

    v_USER VARCHAR2 
) 
AS 
    v_sysdate VARCHAR2(10) := to_char(SYSDATE ,'MMDDYYYY'); 
    v_table_name VARCHAR2(50); 

BEGIN 

    SELECT 
    TABLE_NAME INTO v_table_name 
    FROM 
    ALL_OBJECTS F -- Table with two columnsю. OWNER AND NAME TABLES 
    WHERE 
    F.OWNER = v_USER; 

    --Name of tables and owner ALL_OBJECTS 

EXECUTE IMMEDIATE 'CREATE TABLE USER_BANCU.'||v_USER||'_'||v_table_name||'__'||v_sysdate||to_char(sysdate,'HH24_MI_SS')||' AS 
      SELECT * 
      FROM '||v_USER||'.'||v_table_nam; 
COMMIT; 
END; 
/
+0

Ich denke, dass wir eine Schleife brauchen. –

+0

Нужен цикл что бы взять имнеа таблиц. –

+0

Benötigen Sie einen Zyklus, der Imnea-Tabellen benötigt. –

Antwort

Verwandte Themen