mannoula_2007
Messages postés49Date d'inscriptionvendredi 13 avril 2007StatutMembreDernière intervention30 novembre 2009
-
7 mai 2007 à 14:16
mannoula_2007
Messages postés49Date d'inscriptionvendredi 13 avril 2007StatutMembreDernière intervention30 novembre 2009
-
8 mai 2007 à 16:24
bonjour à tous,
SVP j'ai l'instruction suivante qui ne fonctionne pas
Dim Odbccommand1 As OdbcCommand = OdbcConnexion1.CreateCommand()
Dim Odbccommand2 As OdbcCommand = OdbcConnexion1.CreateCommand() Odbccommand1.CommandText "SELECT Opération FROM TAB_OPERATIONS WHERE CDOP " + TextBox4.Text
Odbccommand2.CommandText = "INSERT INTO ORDONNANCEMENT(CodeORD,CodeLot,DateDebut,DateFin) VALUES ('f','f','a','c') WHERE CDPROD=" + TextBox3.Text
.....
Dim aa As String aa Odbccommand1.CommandText "INSERT INTO ORDONNANCEMENT(CodeORD,CodeLot,DateDebut,DateFin) VALUES ('f','f','a','c') WHERE CDPROD=" + TextBox3.Text
Dim oo As Integer
oo = Odbccommand2.ExecuteNonQuery()
OdbcConnection1.Close()
.....
j'ai tjrs l'erreur : point virgule manquant
cs_Visso
Messages postés36Date d'inscriptionsamedi 8 juin 2002StatutMembreDernière intervention17 avril 2014 7 mai 2007 à 14:32
Salut aa Odbccommand1.CommandText "INSERT INTO ORDONNANCEMENT(CodeORD,CodeLot,DateDebut,DateFin) VALUES ('f','f','a','c') WHERE CDPROD=" + TextBox3.Text*
c'est un exemple ou le valeur que tu doit vraiment envoyer , car en faisant cela tu suppose que toute les valeurs sont de type chaine de caractère, cependant je voit des champs de type date.
J'aimerai que tu envoies les vrais valeurs que tu veux envoyer dans la base.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 7 mai 2007 à 15:12
Salut
En fait, tu as mélangé les type d'instruction.
Deux méthodes pour insérer des données :
-1- Tu fournis les valeurs directement :
"INSERT INTO ORDONNANCEMENT " & _
" (CodeORD, CodeLot, DateDebut, DateFin) " & _
"VALUES ('f','f','a','c')"
Pense à bien respecter les espaces entre les instructions et valeurs
-2- Tu fournis des valeurs issues d'une table, avec une méthode de sélection :
"INSERT INTO ORDONNANCEMENT " & _
"Select CodeORD, CodeLot, DateDebut, DateFin " & _
" From TAB_OPERATIONS " & _
" Where CDOP = " + TextBox4.Text
Dernières choses : les règles de base de SQL :
Si la définition du champ dans la DB (pas dans VB) est de type :
- Texte : Encadrement des valeurs par des apostrophes '
- Chiffre : Pas d'encadrement
- Date : Encadrement des valeurs par des dièses #
Si le nom d'une table ou d'un champ comporte des caractères spécifiques à la langue (accents) ou des caractères spéciaux pour SQL (comme le souligné _ ), il faut encadrer ce nom avec des crochets droits [ et ]
Exemple : Ta table TAB_OPERATIONS devrait être écrite [TAB_OPERATIONS]
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 7 mai 2007 à 15:15
PS : J'oubliais.
Il faut absolument que le nombre et l'ordre des champs composant la table dans laquelle tu insères soit respecté.
Par exemple :
"Select CodeORD, CodeLot, DateDebut, DateFin "
suppose que la table ORDONNANCEMENT dans laquelle tu insères les données, ait des champs de même nom et dans cet ordre.
Vous n’avez pas trouvé la réponse que vous recherchez ?