PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → requete SQL
requete SQL
Débuté par nguyen, 15 nov. 2006 14:16 - 1 réponse
Posté le 15 novembre 2006 - 14:16
bonjour

hello...

je construis une requete automatiquement d'apres un fichier XML dont voici le code(le code pour la construction de la requete est en vert),
le nom de la balise correspond au nom de mon champs dans la table nikita
et la valeur a la valeur a insérer.


TANTQUE PAS XMLEnDehors("DocXML2")

sChampsSQl = sChampsSQl + XMLNomElément("DocXML2")+","
svaleursSQL = svaleursSQL + "'" + Remplace( XMLDonnée("DocXML2"),"'","''")+"',"
// svaleursSQL = svaleursSQL + {xmlDonnee("DocXML2")} +","
XMLSuivant("DocXML2")
FIN

sChampsSQl= SansEspace(sChampsSQl)
svaleursSQL= SansEspace(svaleursSQL)
sChampsSQl=Gauche(sChampsSQl,Taille(sChampsSQl)-1)
svaleursSQL=Gauche(svaleursSQL,Taille(svaleursSQL)-1)

bRes = HExécuteRequêteSQL(sdInsertNikita,hModifieFichier,"INSERT INTO Nikita (" +sChampsSQl+ ") VALUES (" +svaleursSQL+ ")")

SI bRes ALORS
Info("ok")
SINON
Erreur("Erreur: "+ HErreur())
SAI_Saisie1= "INSERT INTO nikita (" +sChampsSQl+ ") VALUES (" +svaleursSQL+ ")"
FIN

et bien entendu cela ne marche pas, l'erreur me dit que ma requete est mal construite, par ailleurs j'ai visulaiser ma requete qui semble ok, mais pour latester avec WDSQL c'est une autre affaire, je n'arrive pas...

lors de la connection a la base je met:
- connexion par acces hyperfile-serveur
source de donnée:
-C:\Mes Projets\nikita\nikita.wdd
base de donnée
-NIKITA

ensuite lorsque j'appuie sur suivant j'ai le message d'erreur suivant:
la connexion au sereur C à echoué
détail de l'erreur système: hote inconnu

par ailleurs je sais bien que C n'est pas un serveur, mais que faudrait t'il mettre comme valuer pour "source de données"?

bon, ne fait cela fait plusieurs questions, mais l'utilisation de WDSQL n'est qu'un moyen pour trouver mon erreur..

merci pour votre aide

minh
Posté le 15 novembre 2006 - 15:53
tu peux aussi tester ta requete en créant une requête temporairement
une requete dans windev, en y collant ton code SQL peut etre que la
connexion sera plus simple à mettre en place ainsi ?

eric l.

> nguyen a écrit :
bonjour

hello...

je construis une requete automatiquement d'apres un fichier XML dont voici le code(le code pour la construction de la requete est en vert),
le nom de la balise correspond au nom de mon champs dans la table nikita
et la valeur a la valeur a insérer.


TANTQUE PAS XMLEnDehors("DocXML2")

sChampsSQl = sChampsSQl + XMLNomElément("DocXML2")+","
svaleursSQL = svaleursSQL + "'" + Remplace( XMLDonnée("DocXML2"),"'","''")+"',"
// svaleursSQL = svaleursSQL + {xmlDonnee("DocXML2")} +","
XMLSuivant("DocXML2")
FIN

sChampsSQl= SansEspace(sChampsSQl)
svaleursSQL= SansEspace(svaleursSQL)
sChampsSQl=Gauche(sChampsSQl,Taille(sChampsSQl)-1)
svaleursSQL=Gauche(svaleursSQL,Taille(svaleursSQL)-1)

bRes = HExécuteRequêteSQL(sdInsertNikita,hModifieFichier,"INSERT INTO Nikita (" +sChampsSQl+ ") VALUES (" +svaleursSQL+ ")")

SI bRes ALORS
Info("ok")
SINON
Erreur("Erreur: "+ HErreur())
SAI_Saisie1= "INSERT INTO nikita (" +sChampsSQl+ ") VALUES (" +svaleursSQL+ ")"
FIN

et bien entendu cela ne marche pas, l'erreur me dit que ma requete est mal construite, par ailleurs j'ai visulaiser ma requete qui semble ok, mais pour latester avec WDSQL c'est une autre affaire, je n'arrive pas...

lors de la connection a la base je met:
- connexion par acces hyperfile-serveur
source de donnée:
-C:\Mes Projets\nikita\nikita.wdd
base de donnée
-NIKITA

ensuite lorsque j'appuie sur suivant j'ai le message d'erreur suivant:
la connexion au sereur C à echoué
détail de l'erreur système: hote inconnu

par ailleurs je sais bien que C n'est pas un serveur, mais que faudrait t'il mettre comme valuer pour "source de données"?

bon, ne fait cela fait plusieurs questions, mais l'utilisation de WDSQL n'est qu'un moyen pour trouver mon erreur..

merci pour votre aide

minh