MySQL ตอนที่ 2 : Windows Store Apps ทำการ Insert , Update , Delete (C#) |
MySQL ตอนที่ 2 : Windows Store Apps ทำการ Insert , Update , Delete (C#) ในตอนที่ 1 เราได้เรียนรู้วิธีการปรับแต่งติดตั้งชุด MySQL.Data.RT เพื่อใช้สำหรับเขียนติดต่อกับ MySQL Database แล้ว ในตอนที่ 2 ของบทความ Windows Store Apps กับ MySQL จะขอขยายความเกี่ยวกับการทำงานร่วมกับ MySQL มากขึ้น เช่น Insert (การเพิ่มข้อมูล) , Update (แก้ไขข้อมูล) , Delete (ลบข้อมูล) ซึ่งถ้าเคยเขียน.NET ติดต่อกับ MySQL ผ่าน MySql.Data.MySqClient มาแล้ว ต้องบอกว่า ไม่แตกต่างกัน สามารถใช้รูปแบบการเขียนได้เหมือนกันทุกประการ ทั้งรูปแบบ DataReder , DataSet , DataTable หรือการ Query ต่าง ๆ
Example ตัวอย่างการเขียน Windows Store Apps เพื่อ Insert / Update / Delete ข้อมูล ใน MySQL Database
โครงสร้างของ Table และ Data
CREATE TABLE `member` (
`ID` int(2) NOT NULL auto_increment,
`Name` varchar(50) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `member` VALUES (1, 'Weerachai Nukitram');
INSERT INTO `member` VALUES (2, 'Adisorn Boonsong');
INSERT INTO `member` VALUES (3, 'Surachai Sirisart');
ข้อมูลในตาราง
บนโปรเจคของ Windows Store Apps ให้ทำการ Add Reference ของ MySql.Data.RT.dll ให้เรียบร้อย
Insert Syntax รูปแบบการ Insert ลงใน MySQL Database บน Windows Store Apps
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Windows.Devices.Geolocation;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Core;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
using System.Text;
using MySql.Data.MySqlClient;
// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
namespace WindowsStoreApps
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
///
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
string strConnection = "server=localhost;database=mydatabase;uid=root;password=root;";
using (MySqlConnection connection = new MySqlConnection(strConnection))
{
connection.Open();
//*** Example 1 ***//
string sql1 = "INSERT INTO member (Name) VALUES ('Adisorn Nitipakron')";
MySqlCommand cmd1 = new MySqlCommand(sql1, connection);
cmd1.ExecuteNonQuery();
//*** Example 2 ***//
string sql2 = "INSERT INTO member (Name) VALUES (?sName)";
MySqlCommand cmd2 = new MySqlCommand(sql2, connection);
cmd2.Parameters.Add("?sName", MySqlDbType.VarChar).Value = "Surapong Junsiriphun";
cmd2.ExecuteNonQuery();
this.lblResult.Text = "Record has been added.";
}
}
}
}
Update Syntax รูปแบบการ Update ใน MySQL Database บน Windows Store Apps
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Windows.Devices.Geolocation;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Core;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
using System.Text;
using MySql.Data.MySqlClient;
// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
namespace WindowsStoreApps
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
///
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
string strConnection = "server=localhost;database=mydatabase;uid=root;password=root;";
using (MySqlConnection connection = new MySqlConnection(strConnection))
{
connection.Open();
//*** Example 1 ***//
string sql1 = "UPDATE member SET Name = 'Adisorn Junsiriphun' WHERE ID = '3'";
MySqlCommand cmd1 = new MySqlCommand(sql1, connection);
cmd1.ExecuteNonQuery();
//*** Example 2 ***//
string sql2 = "UPDATE member SET Name = sName WHERE ID = sID";
MySqlCommand cmd2 = new MySqlCommand(sql2, connection);
cmd2.Parameters.Add("?sName", MySqlDbType.VarChar).Value = "Surapong Nitipakron";
cmd2.Parameters.Add("?sID", MySqlDbType.Int32).Value = 4;
cmd2.ExecuteNonQuery();
this.lblResult.Text = "Record has been updated.";
}
}
}
}
Delete Syntax รูปแบบการ Update ใน MySQL Database บน Windows Store Apps
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Windows.Devices.Geolocation;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Core;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
using System.Text;
using MySql.Data.MySqlClient;
// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
namespace WindowsStoreApps
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
///
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
string strConnection = "server=localhost;database=mydatabase;uid=root;password=root;";
using (MySqlConnection connection = new MySqlConnection(strConnection))
{
connection.Open();
//*** Example 1 ***//
string sql1 = "DELETE FROM member WHERE ID = '3'";
MySqlCommand cmd1 = new MySqlCommand(sql1, connection);
cmd1.ExecuteNonQuery();
//*** Example 2 ***//
string sql2 = "DELETE FROM member WHERE ID = sID";
MySqlCommand cmd2 = new MySqlCommand(sql2, connection);
cmd2.Parameters.Add("?sID", MySqlDbType.Int32).Value = 4;
cmd2.ExecuteNonQuery();
this.lblResult.Text = "Record has been updated.";
}
}
}
}
คัวอย่างข้อมูลที่ถูก Insert ลงใน MySQL Database
สำหรับรายละเอียดอื่น ๆ สามารถอ่านเพิ่มเติมได้จากบทความที่เกี่ยวข้องกับ .NET และ MySQL
ASP.NET MySQL (MySql.Data.MySqlClient)
ASP.NET & MySql.Data.MySqlClient
.
|