J'ai cette commande d'insertion où iam essayant d'insérer un numéro à prendre de la boucleinsérer le numéro dans oracle sql - en utilisant Jython
i=0
for line in column:
myStmt.executeQuery("INSERT INTO REVERSE_COL
(TABLE_NAME,COL_NAME,POS) values
(,'test','"+column[i]+"','"+i+"'")
i=i+1
POS EST NUMÉRO DATATYPE
mais cela fonctionne si je coder en dur comme 1
i=0
for line in column:
myStmt.executeQuery("INSERT INTO REVERSE_COL
(TABLE_NAME,COL_NAME,POS) values
(,'test','"+column[i]+"',1")
J'ai essayé que i, + i + et une autre méthode, mais sa ne fonctionne pas toute suggestion comment résoudre ce problème.
Merci à tous.
J'ai eu une minute pendant le déjeuner pour regarder un peu autour, et je crois que c'est probablement le cas. Vous n'avez pas mentionné si le "ne fonctionne pas" impliqué recevant une erreur, ou simplement des données invalides. Mais je suppose que c'est l'ancien. S'il vous plaît voir http://en.wikibooks.org/wiki/Python_Programming/Variables_and_Strings#Combining_Numbers_and_Strings pour information Vous devrez peut-être utiliser la fonction 'str()'. – KevenK
Keven, L'erreur était liée à un nombre invalide puisque la colonne cible a un type de données et que j'ai spécifié dans la question aussi quand j'utilise + i + est en string et j'ai essayé int (str (+ i +) aussi Mais rien ne semble fonctionner – kdev
En utilisant 'int()' autour de 'str()', vous annulez effectivement le résultat de la fonction, vous le convertissez d'un nombre, d'une chaîne et d'un numéro. Il semble d'ici que vous avez spécifiquement besoin d'utiliser '... + colonne [i] +" ',' "+ str (i) +" '")' à la fin de votre requête. – KevenK