Ihave a créé un proc comme celui-ciComment utiliser create table et supprimer des instructions DDL de table dans proc stocké dans Oracle.
create or replace PROCEDURE RMD_Tables AS
Begin
execute immediate 'Drop table a608232_new_62K_master';
execute immediate 'create table a608232_new_62K_master as select A.* from
a608232_MRD_DATA_62K_W_Account A inner join a608232_new_mids B
on A.MID = B.MID';
execute immediate'drop table a608232_web_abt_qlik_data';
execute immediate 'create table a608232_web_abt_qlik_data as select
lv2.IP,SESSION_ID,PAGENAME,VSCHANNEL,VSSEARCHPHRASE,click_date,
EXTRACT(YEAR FROM click_date)"YEAR",EXTRACT(MONTH FROM
click_date)"MONTH",EXTRACT(DAY FROM
click_date)"DAY",wb.CLICK_HR,wb.CLICK_MIN,
RANK() OVER(PARTITION BY SESSION_ID ORDER BY SESSION_CLK_SEQ_NBR ASC)
SESSION_RANK
from abc wb
right outer join A608232.a608232_new_62K_master lv2 on wb.IP = lv2.IP WHERE
click_date >= TO_DATE(''25-SEP-2017'',''DD-MON-YYYY'') AND
vschannel=''aaaa'' ' ;
END;
Lorsque j'exécute cette procédure ma première table se laissa tomber/Après que je reçois cette erreur msg
Connecting to the database CWE_Nexedia.
ORA-01031: insufficient privileges
ORA-06512: at "A608232.RMD_TABLES", line 6
ORA-06512: at line 2
Process exited.
Disconnecting from the database CWE_Nexedia.
Ma première déclaration est CHAISE après Je suis confronté à un problème. Je le fais parce que je veux planifier un travail qui se déroulera tous les jours pour mettre à jour ces tableaux.
Quelle est votre interprétation du message, 'ORA-01031: privilèges insuffisants'? Aussi, pourquoi ne pas simplement remplacer le contenu de la table au lieu de l'abandonner et de le créer? –
@DanBracuk J'ai le previledges quand je le cours en septembre je peux courir et le créer. L'option de remplacement comment suggérer je fais cela – PriyalChaudhari
Pour remplacer le contenu, utilisez deux requêtes. Le premier sera une suppression et le second sera un insert. –