Insertion dans une base de donnée

jejemimi Messages postés 14 Date d'inscription jeudi 8 avril 2010 Statut Membre Dernière intervention 12 mai 2010 - 10 mai 2010 à 15:31
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 - 5 juin 2010 à 18:59
bonjour,
je devellope une application en vb.net avec base MySql. Tout (ou presque) se passe bien jusqu'au moment ou je doit ajouter des donnée dans la bd..
la chaine de connexion est bonne donc c'est ou un probleme de SQL ou de code.
Dim HostConn As New MySqlConnection
Dim dtr As DataRow
Dim da As MySqlDataAdapter
Dim cmdb As MySqlCommandBuilder
Dim dst As New DataSet

da = New MySqlDataAdapter("SELECT * FROM eleve e,famille f WHERE e.idfamille=f.idfamille", HostConn)
da.Fill(dst, "famille")
dtr = dst.Tables("famille").NewRow
dtr("situationFamille") = Cbsituationfam.Text
dtr("nommartialP") = Txtnompere.Text
dtr("prenomP") = Txtprenompere.Text
dtr("nomNaissP") = Txtnomnaissancepere.Text
dtr("nomEnfant") = Frmeleve.Txtnom.Text
dst.Tables("famille").Rows.Add(dtr)
cmdb = New MySqlCommandBuilder(da)
da.Fill(dst, "famille")
da.Update(dst, "famille")

famille (idfamille,situationFamille,nommartialP, prenomP,nomNaissP)
enfant (idenfant,nomEnfant, #idfamille)

le update ne passe pas " La référence d'objet n'est pas définie à une instance d'un objet." NullReferenceExeption
Ce code c'est quelques jours de test pour un insertion mais apparement quand j'ai commencer a chercher ici, il n'y a pas la meme methode que moi donc je suis bien entendu ouvert a toute critique ou changement total du code et enfin il est egalement possible qu'il y ai redondance dans ce code :(

merci d'avance

3 réponses

jejemimi Messages postés 14 Date d'inscription jeudi 8 avril 2010 Statut Membre Dernière intervention 12 mai 2010
12 mai 2010 à 00:58
Personne??
0
Youssef1962 Messages postés 4 Date d'inscription lundi 6 juin 2011 Statut Membre Dernière intervention 20 mai 2010
17 mai 2010 à 21:45
salut mes amis ,
je devellope une petite application en vb.6 avec une base Access 2003. Mon petit programme roule bien seulement au moment ou je choisie un element (Rubrique ) de l'evenement list1_click()pour afficher des données relatives à la Rubrique choisie exemple le Crédit de la Rubrique, et le CréditDisponible de la rubrique
le résultat reçu etant une résultat FIX et correspond à la premiere enregistrement de la rubrique existante sur la table Access .
voici mon code :
sur un module:
Public cn As Connection
Public cmd As Command
Public prm As Parameter

sur un Form :
Private Sub form_load()
'---initialisations
Screen.MousePointer = vbHourglass
'crée une connection
Set cn = New Connection
cn.Open "Provider=Microsoft.jet.oledb.4.0;Data source =F:\BudgetInara(cc)2009.mdb;Persist security info=false"
'créé un recordset
Dim rs As New Recordset
'lié à la connection
Set rs.ActiveConnection = cn
'interroge la base
rs.Open "select rubriques from budget Where ex = '2009' "
'remplit la liste
Do While Not rs.EOF
List1.AddItem rs("Rubriques")
'DataList1.AddItem rs("rubriques")
'List1.AddItem rs("Ex")
rs.MoveNext
Loop
rs.Close
'prépare la commande
Set cmd = New Command
Set cmd.ActiveConnection = cn
cmd.CommandText = "select Crédit, CréditDisp from Budget "
cmd.Prepared = True
'prépare le paramétre
Set prm = cmd.CreateParameter(, adBSTR)
cmd.Parameters.Append prm
Screen.MousePointer = vbDefault
End Sub
'finalisation
Private Sub form_unload(cancel As Integer)
'Libere
Set cmd = Nothing
Set prm = Nothing
'ferme la connection
cn.Close
Set cn = Nothing
End Sub
'---Séléction d'une rubrique
Private Sub list1_click()
'valorise le paramétre
prm.Value = List1.Text
prm.Size = Len(List1.Text)
'Execute la requête avec un paramétre
Dim rs As Recordset
Set rs = cmd.Execute
'affiche
txtCr = rs("Crédit")
txtCrd = rs("CréditDisp")
'ferme
Set rs = Nothing
End Sub
'--------change de taille
Private Sub form_resize()
On Error Resume Next
List1.Move 0, 0, ScaleWidth, ScaleHeight - pctdetail.Height
pctdetail.Move 0, List1.Height, ScaleWidth
End Sub
0
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
5 juin 2010 à 18:59
youssef1962 tu es dans un topic VB.NET ! De plus post ton probléme sur un nouveau sujet sinon impossible de répondre aux deux !
0
Rejoignez-nous