[VB.NET & mysql] probleem met update van een tabel

Pagina: 1
Acties:

  • CaineTanathos
  • Registratie: Februari 2001
  • Laatst online: 07-07 22:00
ik heb 2 tekst velden eentje voor postcode en eentje voor de woonplaats.

Dit is een deel van mijn code:
Public Sub InitializeComponentEX()
Dim objgemtabel As DataTable

objcnn.Open()
objDataSet = New DataSet("gemeente")

objpostAdapter = New MySQLDataAdapter("select woonplaats,postcode from tblgemeente", objcnn)
objpostAdapter.Fill(objDataSet, "gemeente")
datagridGemeente.DataSource = objDataSet


objcnn.Close()

End Sub
Private Sub cmdtoevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdtoevoegen.Click

Dim newrow As DataRow = objDataSet.Tables("gemeente").NewRow()
Dim objcommandBuilder As MySQLCommandBuilder = New MySQLCommandBuilder(objpostAdapter)

newrow("postcode") = CInt(txtpostcode.Text)
newrow("woonplaats") = txtwoonplaats.Text


objDataSet.Tables("gemeente").Rows.Add(newrow)

objcnn.Open()

objpostAdapter.Update(objDataSet, "gemeente")
objcnn.Close()

End Sub


Mijn probleem :

Als ik dit programma uitvoer
en geef bijvoorbeeld : postcode : 2000 en woonplaats : Antwerpen in, dan
geeft hij een fout op :" objpostAdapter.Update(objDataSet, "gemeente")"

Hij zegt :"Unknown column 'Antwerpen' in 'field list' "

dus voor een of andere reden gebruikt hij die text voor veldnaam ipv woonplaats


Het rare is indien ik van woonplaats een numeriek veld maak er geen probleem is en dat hij de gegevens wel toevoegd.

Dus wat doe ik fout ?

Perilous to us all are the devices of an art deeper than we possess ourselves.


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:02
heb je aan die DataAdapter een InsertCommand toegekend?

https://fgheysels.github.io/


  • CaineTanathos
  • Registratie: Februari 2001
  • Laatst online: 07-07 22:00
eh nee ?

hoe doe je dat?

Perilous to us all are the devices of an art deeper than we possess ourselves.


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:02
Je zult een (waarschijnlijk) MySqlCommand object moeten maken waarin je aangeeft hoe nieuwe gegevens moeten toegevoegd worden ad databank.
code:
1
2
3
4
5
6
MySqlCommand cmdInsert = new MySqlCommand();
cmdInsert.Connection = conn;
cmdInsert.CommandText = "INSERT INTO tabel (veld, veld) VALUES (@p_veld1, @p_veld2)";
cmdInsert.Parameters.Add (".......");

DataAdapter.InsertCommand = cmdInsert;

C# code

Je zult dan bij het toevoegen van de parameters moeten opgeven naar welke column iedere parameter mapped. (Ik weet niet of je dat kan via de 'Add' method v/d parameters collection, maar, je kan alleszins een Parameter object aanmaken en dat via de constructor specifiëren. Dat parameter object kan je dan aan de Parameters collection toevoegen mbhv de Add method.

Dit kan je ook doen voor het UpdateCommand, SelectCommand, DeleteCommand.

[ Voor 28% gewijzigd door whoami op 24-03-2003 16:46 ]

https://fgheysels.github.io/


  • CaineTanathos
  • Registratie: Februari 2001
  • Laatst online: 07-07 22:00
ja maar als alle velden numeriek zijn , dan doet hij het wel,want zoals je ziet werk ik met een dataset

Maar toch al bedankt, dan kan ik toch al voorlopig verder

Nog enkele Details ik gebruik de mysql provider van Mysqlnet

ik heb nu de laatste versie gecomileerd en nu krijg geen error meer, maar zet hij nog steeds niet de goede gegevens erin.

Nu is de vraag doe ik iets verkeerd of zit er nog steeds een klein bugje erin

Gebruikt iemand anders deze provider ?

[ Voor 53% gewijzigd door CaineTanathos op 24-03-2003 19:50 ]

Perilous to us all are the devices of an art deeper than we possess ourselves.