PB ajout dans une base de données

biddal Messages postés 45 Date d'inscription jeudi 9 septembre 2004 Statut Membre Dernière intervention 8 août 2011 - 18 janv. 2006 à 12:56
SUPERCREATOR Messages postés 3 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 19 janvier 2006 - 19 janv. 2006 à 13:00
Bonjour voici mon code:

Private Sub Command5_Click()
Dim base As Database
Dim sql As String

Set base = OpenDatabase("E:\VB\Projet1\CD.mdb")
sql = "INSERT INTO Emprunteur(Nom,Prenom,Adresse,Telephone,Titre_de_l'element_prete,Date_du_pret,Nombre_de_cds) Values ('" & Ajout.Text1 & "','" & Ajout.Text2 & "','" & Ajout.Text3 & "','" & Ajout.Text4 & "','" & Ajout.Text7 & "','" & Ajout.Text6 & "','" & Ajout.Text5 & "')"
MsgBox (sql)
base.Execute (sql)
AjoutSuppr.Text1 = ""
AjoutSuppr.Hide
AjoutSuppr.Show


End Sub

J'ai 7 textbox et j'aimerai ajouter les infos que l'on saisie dedfans dans une base de données. Mais avec ce code ca ne marche pa! Pouvez vous me dire ce qu'il ne va pas ou vers quelle autre solution m'orientée.
Merci de votre aide.

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
18 janv. 2006 à 19:13
Mets des [ et ] pour encadrer les noms des champs qui ne sont pas standards (avec accents ou signes comme le ')
Tu peux en mettre à tous les noms de champ, ce n'est pas gênant

sql = "INSERT INTO Emprunteur(Nom, Prenom, Adresse, Telephone, [Titre_de_l'element_prete], Date_du_pret, Nombre_de_cds) Values ('" & Ajout.Text1 & "','" & Ajout.Text2 & "','" & Ajout.Text3 & "','" & Ajout.Text4 & "','" & Ajout.Text7 & "','" & Ajout.Text6 & "','" & Ajout.Text5 & "')"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
18 janv. 2006 à 19:16
De plus, si les valeurs des champs que tu insères (comme Ajout.Text2) contient des ', il y aura aussi un problème.
Pour le résoudre, il suffit de doubler les ' avec ceci :
ChaineCorrecte = Replace(Ajout.Text2, "'", "''")
0
SUPERCREATOR Messages postés 3 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 19 janvier 2006
19 janv. 2006 à 13:00
salut
je comprends pas pourquoi vous utilisez du code (vous aimez vous faire mal?)
alors que VB6 vous permet de mettre un contrôle ADODC et un DATAGRID
SANS AUCUN CODE .
vous liez adodc à la base de données et le datagrid à l'adodc .
ensuite il suffit de lier les textbox à l' adodc et choisir le champ lié.
(tous ça dans les propriétés et sans aucun code)
de temps en temps il faut mettre un peu de code quand même :
ajout d'enregistrement:adodc1.recordset.addnew
etc...etc...
étant fainéant de nature ça me parait être une solution plus efficace.
0
Rejoignez-nous