I need a help 2

sooprano Messages postés 33 Statut Membre -  
Polux31 Messages postés 7219 Statut Membre -
Bonjour, j'travaille en visual basic 6 j'ai une table Nommé Commande et 3 champs (N°Commande(numero auto) , Date Commande (date) , N°Client (Clé etrangere) )
le probleme c'est Comment je ferai une incrementation auto sur le N°Commande l ors de la validation du Donnée Sachant Ke Le Champs Num_Com (N°Commande) est type long (numerique)

J'ai Fé Mon sql

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Index
Case Is = 1 'bouton enregistrer
va = MsgBox("Voulez Vous Vraiment Valider???", vbYesNo + vbInformation, "Validation")
If va = 6 Then
d = Format(Label4, "dd/mm/yyyy")
SQL = " insert into Commande " & _
" values ( , #" & d & "# , '" & Combo1 & "')"
Base.Execute SQL
Combo1.text = ""
End If

remarque le n°Command(!Num_com) prend le texte1

je px avoir aussi la solution d incrementer le N°Command Apartir du valeur 1000 par defaut ainsi d suite

7 réponses

Polux31 Messages postés 7219 Statut Membre 1 204
 
re,

Il faut construire ton insert comme ceci en nommant les champs à insérer. Si le champ N°Commande est auto-incrémenté, il se remplira automatiquement :

insert into Commande(Date Commande, N°Client) " & _
" values ( , #" & d & "# , '" & Combo1 & "')"

Un conseil, n'utilise pas de caractère spéciaux pour le nom de tes champs tel que ° ... pour N°Client, il vaut faire NumClient ...

;o)

Polux
0
sooprano Messages postés 33 Statut Membre
 
c'est cke j'ai fé vraiment Mais je vois acun numero sachant ke j'ai declarer le N°command autoincrement
VOILA MON SQL il m sorte un debogage lord se execution 'erreur de syntaxe en insert into)
d = Format(Label4, "dd/mm/yyyy")
SQL = " insert into Commande " & _
" values ( , # " & d & " # , '" & Combo1 & "')"
Base.Execute SQL

remarque j'utilise textbox pr avoir la veleur du N°commande
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
de quel type est le N°Client ?

Si le N°client est numérique faire :

insert into Commande(Date Commande, N°Client) " & _
" values ( , #" & d & "# , " & CInt(Combo1.Text & ");"

Si le champ N°Commande est auto-incrémenté, il se remplira automatiquement.
0
sooprano Messages postés 33 Statut Membre
 
N°client est de type text le probleme ca vien du num_cde (N°commande) il est delarer auparvant type long ainsi j'ai cocher autoincrement (incrementer)
le Sql que tu ma donner auparavant est juste logiquement Mais pourkoi j'ai eu le debogage
ainsi je vois aucune incrementation sur le text1
une remarque j'ai fé dans la base donnée sur le champs num_cde Valeur par defaut 1000
ca pourra gener ca?

d = Format(Label4, "dd/mm/yyyy")
SQL = " insert into Commande " & _
" values( , #" & d & "# , '" & Combo1 & "')"
Base.Execute SQL
sql est juste on laissont du vide entre ( et , apres values pour prendre en considerartion l'incrementation
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Polux31 Messages postés 7219 Statut Membre 1 204
 
oups ... il faut pas mettre la virgule après la parenthèse ...

insert into Commande (Date Commande, N°Client) " & _
" values ( #" & d & "# , " & CInt(Combo1.Text & ");"

Il faut rajouter ce qui est en gras et si num_cde est auto-incrémenté il faut enlever valeur par défaut 1000 ...
0
sooprano Messages postés 33 Statut Membre
 
oooooooooooh lala ok le sql mnt est juste Mais le probleme est tjrs present c'est ke j vois rien sur le text 1 il est tjrs vide
es c ke cé moi ke j dois saisir en debut ou c'est automatiquement j dois avoir le numero par exemple du premiere commande puis je valide et pr entrer la 2eme commande j dois avoir N°commande 2 et ainsi d suite

le probleme ke j'ai eu quand j'ai executer le programme j'ecris sur text1 par exemple 1 ou je le laisse vide et JE selectionne la N°client la date Commande prend date system et puis je valide il me sorte un debogage dans les deux sens (si je saisie du text1 ou j le laisse vide) LE NOMBRE DE VALEUR DE LA REQUETE DOIT COINCIDER AVEC LE NOMBRE DE CHAMPS DESTINATION
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
tu as combien de champs dans ta table ??? le num_Cde est-il vrai auto-incrémenté dans la table ?
0