Salut à tous, je reviens avec un nouveau problème.
En fait j'ai fait un job qui permet d'extraire des données selon certains critères d'une table d'une BD SQLServer vers une autre table d'une autre BD SQLServer.
Tous les paramètres sont récupérés depuis un fichier texte et chargés par des variables de contexte. Jusque là tout se passe bien.
La variable dans laquelle la requete est définie dans le fichier se présente ainsi : EXTRACTSQLSERVERJOB_QUERY=WHERE (("+context.EXTRACTSQLSERVERJOB_FIELD_1+"<"+context.EXTRACTSQLSERVERJOB_CRITERION_1+") AND ("+context.EXTRACTSQLSERVERJOB_FIELD_7+">"+context.EXTRACTSQLSERVERJOB_CRITERION_7))+"
Cette variable est correctement chargée dans une variables de contexte dans Talend : Implicit_Context_Context set key "EXTRACTSQLSERVERJOB_QUERY" with value "WHERE (("+context.EXTRACTSQLSERVERJOB_FIELD_1+"<"+context.EXTRACTSQLSERVERJOB_CRITERION_1+") AND ("+context.EXTRACTSQLSERVERJOB_FIELD_7+">"+context.EXTRACTSQLSERVERJOB_CRITERION_7))+""
C'est donc à partir de là que survient l'erreur suivante :
J'ai autre soucis, je récupère les paramètres de connexion à la base de données depuis le fichier texte (nomBD, utilisateur, mot_de_passe, schema, table, port). Mais pour extraire les données depuis la table, il faut connaitre le schema celle-ci. Pourtant le job étant supposé être générique, il faut pouvoir récupérer le schéma de la table de manière dynamique, et c'est là que je me cogne la tête
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Exception in component tMSSqlInput_1 java.sql.SQLException: Syntaxe incorrecte vers '<'. at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:368) at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2820) at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2258) at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:632) at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQLQuery(JtdsStatement.java:477) at net.sourceforge.jtds.jdbc.JtdsStatement.executeQuery(JtdsStatement.java:1304).
J'ai aucune idée de comment le faire, j'espère que quelqu'un a une idée.![]()
Partager