2 pièce(s) jointe(s)
Truncate table et insérer dans la table des données issues d'une vue
Bonjour,
je travaille actuellement sous Talend 7.1.1 ESB et j'ai besoin de créer un JOB qui permet:
1 : de récupérer l'ID max de ma table (Fait) puis on l'incrément (Comment faire un incrémentation?),
2 : ensuite je dois TRUNCATE ma table (ERREUR: Exception in component tDBOutput_1 (ODS_TEMPF_PROGRAMMES_TRUNCATE)
java.sql.SQLSyntaxErrorException: ORA-00942: Table ou vue inexistante). Voici mon schéma concernant cette partie: Pièce jointe 490350Pièce jointe 490352
3 : ensuite je dois insérer chaque ligne de la Vue dans ma table qui a été vidée, je pensais pour cela utiliser les composants suivants le tDBOutput de ma table qui a été vidée, reliée à un tMap relié à ma Vue et en sortie l'insertion dans ma table.
J'ai un soucis pour la partie 2, Exception in component tDBOutput_1 (Copy_of_ODS_TEMPF_PROGRAMMES_TRUNCATE)
java.lang.RuntimeException: For delete, the schema must have a key , j'ai dois donc surement avoir un problème avec les paramètres de mon tDBOutput.
J'ai créé dans un premier temps un JOB (comme joint en image) qui est censé seulement tronquer ma table car c'est pour le moment je butte seulement sur cette partie.
Merci d'avance pour toute aide qui sera la bienvenue !
2 pièce(s) jointe(s)
Truncate via Procedure Stockée
Citation:
Envoyé par
fulcho
Je ne sais pas ce que tu veux faire exactement, mais tu as une Action sur la table "tronquer la table", ça peut peut-être t'aider ?
Non justement je n'ai pas les droits d'effectuer un TRUNCATE, je suis obligé de passé par un autre table "SYS" qui possède elle des procédures et notamment la procédure pour effectuer un TRUNCATE. Je pense que je vais utiliser un tOracleSP mais il y a peu de doc et d'exemple sur son fonctionnement. Je ne vois pas ou je dois mettre le nom de mon paramètre.
Les paramètre de mon TDBSP ressemble à ça :
Pièce jointe 490677
Pièce jointe 490679
Mais j'obtiens l'erreur :
Exception in component tDBSP_1 (ODS_TEMPF_PROGRAMMES_TRUNCATE)
java.sql.SQLException: ORA-06550: Ligne 1, colonne 7 :
PLS-00201: l'identificateur 'TABLE_NAME' doit être déclaré
ORA-06550: Ligne 1, colonne 7 :
PL/SQL: Statement ignored
Sachant que l'identificateur table_name est censé être mon paramètre dans la procédure.