Requête VBA

ninou58

XLDnaute Occasionnel
Bonjour tout le monde,
Et oui, je viens encore mes requêtes :unsure:
Je fais une requête INSERT into, quand je met des valeurs ca marche mais quand c'est des variables pas contant. Quand c'est des variables integer ca passe, mais alors string ça passe pas du tout snif.
v_strsql = 'INSERT INTO DETAILS(CodeMachine, Numsemaine, Numjour, Annee, Libelleposte, Matricule, Codeunite, ExceptionD, CnumposteD) SELECT '050' AS Expr1, ' & sem & ' AS Expr2, ' & jour & ' AS Expr3, 2006 AS Expr4, ' & posteR & ' AS Expr5, Matricule, 1 AS Expr6, 1 AS Expr7, ' & numposte & ' AS Expr8 FROM PERSONNEL WHERE (nom = ' &nomE & '' )'

Si vous avez une idée, un autre type que string ou s'il faut faire quelque chose comme convertir je vous ecoute.

Ca marche bien pour les integers alors je veux ça march eaussi pour les autres
:huh: .

merci d'avance

Message édité par: ninou58, à: 06/04/2006 15:48
 

Davidc57

XLDnaute Occasionnel
Bonsoir ninou58,

J'ai deux question :

Tu utilise une base Access ?


Parmis tes variable de type string, y a t-il des blancs ?

Si oui, alors le problème peut venir de là. Je m'explique.

Imaginons que l'on lise une donnée dans une case pour consituer notre variable de type string. Et bien si la case est vide, la variable vaudra ''
Et, j'ai rencontré ce problème une fois. L'injection dans Access est compromiseest il m'a été nécessaire de mettre un espace dans chaque case vide pour résoudre le problème.

Bonne soirée.
David
 

Jam

XLDnaute Accro
Salut David,

Je ne suis pas certain de bien comprendre ton problème mais je pencherai pour un problème de structure SQL lié au guillements simple, double et ce que j'appelerai double-double du type:
ex. '050' c'est différent de '050' et de ''050''

Bon courage
 

ninou58

XLDnaute Occasionnel
Bonsoir,
Merci d'avoir répondu...
Et oui je suis tjs dessus, enfin la peut pas cra pas serveur.
C'est une base SQL SERVER.
Dan sma base ces données je les ai déclaré en varchar car sinon a chauqe fin de nom (par ex) j'avais beaucoup d'espace donc j'ai tout remis.
En faite pour ce qui est des numero ca passe avec le svariable. mais pour les autres du type le nom,le codemachine impossible. Il me bloque en disant qu'il ne connait pa sla colonne column name (sait plus trop le message d'erreur).
Mais quand je le smets dans le svariable sil n'y a pas de blanc j'ai regardé et avec l'espion ca met bien 'XXX'.Pour ce qui est des guillemets je ne sais pas, car je met des varaiables.
La j'avais mis '050' et il passe quand je le met comme ca mais quand je met la variable machine ca passe plus.

Merci encore
 

ninou58

XLDnaute Occasionnel
Bonjour tout le monde!
Me voila de bonneheure et de bonne humeur!
J'ai toruvé la solution. je vous la met au cas où ça pourrait toujours servir.
C'était bien les guillements et les '''
Pour que ca passe, j'ai du faire c egenre de chose:
exception = ' '' & exception & '' '
posteR = ' '' & posteR & '' '
Et maintenant plus de soucis même quan dla variable est vide.

Merci pour votre aide, car je n'aurais pas cherché dans ce sens.

Bonne journée
 

Discussions similaires

Statistiques des forums

Discussions
312 677
Messages
2 090 807
Membres
104 671
dernier inscrit
Guilbry