This article shows you how to connect to MySQL database using MySQL Connector for .NET. I will also show you how you can update mysql database records using C#.
inventorydb
items
Open this file with MySQL Admin tool or copy paste SQL syntax from this file into MySQL Admin tool. Run it and it should create items table in inventorydb database.
http://dev.mysql.com/downloads/connector/net
When you install connector, make sure that you close Visual Studio before installing.
Download sample
The source code of this sample is very straight forward.
//Initialize mysql connection connection = new MySqlConnection(ConnectionString); //Get all items in datatable DTItems = GetAllItems();
GetAllItems()
//Get all items from database into datatable DataTable GetAllItems() { try { //prepare query to get all records from items table string query = "select * from items"; //prepare adapter to run query adapter = new MySqlDataAdapter(query, connection); DataSet DS = new DataSet(); //get query results in dataset adapter.Fill(DS); . . . //return datatable with all records return DS.Tables[0]; }
dataGridView1.DataSource = DTItems;
update
insert
delete
. . . // Set the UPDATE command and parameters. adapter.UpdateCommand = new MySqlCommand( "UPDATE items SET ItemName=@ItemName, Price=@Price, _ AvailableQuantity=@AvailableQuantity, Updated_Dt=NOW() _ WHERE ItemNumber=@ItemNumber;",connection); adapter.UpdateCommand.Parameters.Add("@ItemNumber", _ MySqlDbType.Int16, 4, "ItemNumber"); adapter.UpdateCommand.Parameters.Add_ ("@ItemName", MySqlDbType.VarChar, 100, "ItemName"); adapter.UpdateCommand.Parameters.Add_ ("@Price", MySqlDbType.Decimal, 10, "Price"); adapter.UpdateCommand.Parameters.Add_ ("@AvailableQuantity", MySqlDbType.Int16, 11, "AvailableQuantity"); adapter.UpdateCommand.UpdatedRowSource = UpdateRowSource.None; // Set the INSERT command and parameter. adapter.InsertCommand = new MySqlCommand( "INSERT INTO items VALUES (@ItemNumber,@ItemName,_ @Price,@AvailableQuantity,NOW());",connection); adapter.InsertCommand.Parameters.Add("@ItemNumber", _ MySqlDbType.Int16, 4, "ItemNumber"); adapter.InsertCommand.Parameters.Add("@ItemName", _ MySqlDbType.VarChar, 100, "ItemName"); adapter.InsertCommand.Parameters.Add("@Price", _ MySqlDbType.Decimal, 10, "Price"); adapter.InsertCommand.Parameters.Add_ ("@AvailableQuantity", MySqlDbType.Int16, 11, "AvailableQuantity"); adapter.InsertCommand.UpdatedRowSource = UpdateRowSource.None; // Set the DELETE command and parameter. adapter.DeleteCommand = new MySqlCommand( "DELETE FROM items " + "WHERE ItemNumber=@ItemNumber;", connection); adapter.DeleteCommand.Parameters.Add("@ItemNumber", _ MySqlDbType.Int16, 4, "ItemNumber"); adapter.DeleteCommand.UpdatedRowSource = UpdateRowSource.None; . . .
private void btnSave_Click(object sender, EventArgs e) { try { //Save records in database using DTItems which is datasource for Grid adapter.Update(DTItems); . . .
private void btnDelete_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count > 0) { //Delete a row from grid first. dataGridView1.Rows.Remove(dataGridView1.SelectedRows[0]); //Save records again. This will delete record from database. adapter.Update(DTItems); . . .
This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)
General News Suggestion Question Bug Answer Joke Rant Admin
Math Primers for Programmers