Autor Beitrag
tomycat
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 265
Erhaltene Danke: 1



BeitragVerfasst: Sa 13.06.15 16:25 
hallo,
ich kann mich mit der Datenbank verbinden und nichts in die Tabelle schreiben.

Datenbank: artikel
Tabelle: auto
Spalte: hersteller

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
string myConnection = "server=localhost;port=3306;uid=root;password=root";
MySqlConnection myConn = new MySqlConnection(myConnection);

MySqlDataAdapter myDataAdapter = new MySqlDataAdapter();
myDataAdapter.SelectCommand = new MySqlCommand(" select * artikel.edata ;", myConn);
MySqlCommandBuilder cb = new MySqlCommandBuilder(myDataAdapter);
myConn.Open();

MessageBox.Show("Verbunden");
string query = "INSERT INTO auto (name, age) VALUES('John Smith', '33')";
MySqlCommand cmd = new MySqlCommand(query);
myConn.Close();

Mit meiner workbench sehe ich keinen Eintrag.

Moderiert von user profile iconTh69: Code- durch C#-Tags ersetzt
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Sa 13.06.15 17:42 
Du erstellst einen DataAdapter, erstellst update Commands für diesen, öffnest eine Connection .... und machst dann nichts mit dem Ding. Ok.
Dann erstellst du ein davon unabhängiges SqlCommand mit einem Insert Statement .... und machst auch nix damit.


a.) Den DataAdapter solltest du benutzen um eine DataTable/Dataset zu füllen und damit zu arbeiten wenn du das nicht vor hast spar die denn ganzen Teil.
b.) Ein Command das du einfach so unabhängig von anderen Dingen benutzt mußt du auch ausführen. Bei einer Query per ExecuteReader() um einen DataReader zu bekommen mit dem du über die Daten iterieren kannst oder wenn du in insert, update, delete abfeuern willst dann per ExecuteNonQuery().

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
using (var con = new MySqlConnection("server=localhost;port=3306;uid=root;password=root"))
{
   con.Open();
   using(var cmd = new MySqlCommand("INSERT INTO auto (name, age) VALUES('John Smith', '33')", con);
   {
        command.ExecuteNonQuery();
   }
}