應用程序對數據庫的操作都是只有4個:增,刪,改,查。
只有”查”的操作需要使用適配器來存儲查詢得到的數據。其它3個操作不需要用到適配器。
不同的數據庫有共同操作方法:都要建立連接對象,連接對象要有連接字符串,連接字符串用來指定數據庫的位置。因為數據庫可以是在本機(也就是和應用程序在同一台機器上),也可以是局域網中的某台服務器。所以,連接字符串都會有服務器名,用戶名,密碼,數據庫名這幾樣東西。
數據庫也是1個應用程序,也就說C#應用程序讀寫操作數據庫就是2個應用程序之間的訪問操作。所以不同的數據庫之間的訪問操作都不一樣。每個數據庫都會提供動態鏈接庫.dll來給C#編程使用,在解決方案的“引用”處右鍵添加引用-》找到從數據庫廠家網站上下載得到的.dll文件,你在需要編程的.cs文件的頭部就可以使用動態鏈接庫提供的類對象來操作數據庫了。
Dll庫里面包含多個不同功能的命名空間,命名空間里面有多個類,我只需要使用其中1個命名空間,如下的using MySql.Data.MySqlClient;
這個命名空間有MySqlConnection連接類,MySqlCommand命令類,MySqlDataAdapter適配器類。
using MySql.Data.MySqlClient;//這是MYSQL數據庫的命名空間。
有了上面這一句引用,你在程序中就可以使用操作數據庫的相關對象了。你統計一下,操作數據庫的模式,看下面2個操作。是不是差不多?准備好就open,操作完就close.要准備的東西就2個:連接對象和命令對象。連接上數據庫還要操作數據庫,所以這2個對象是必備的。增刪改都只要2個對象。對於查詢,需要3個對象:連接對象,命令對象,適配器對象。適配器對象用來存儲查到的內容。
MYSQL數據庫的操作:要引用:using MySql.Data.MySqlClient;
增刪改查操作都是相同的模式,open----操作----close. 以下的操作都在VS2015中正常使用,可以直接復制使用
MYSQL數據庫插入操作:
前2行得到1個完整的對象絕對位置.第一行得到主機數據庫.第二行得到數據庫中的數據表a //建立1個mysql連接對象並且直接初始化連接字符串.這樣簡約 MySqlConnection myConnnect = new MySqlConnection("server=localhost;User Id=root;password=123456;Database=aa"); string SQLSTR = string.Format("insert into A(A,B,C,daytime) values('{0}','{1}','{2}','{3}')", PLCvalue.VD100, PLCvalue.VD104, PLCvalue.VD108, DateTime.Now.ToString()); MySqlCommand mycm = new MySqlCommand(SQLSTR, myConnnect); myConnnect.Open(); mycm.ExecuteNonQuery(); myConnnect.Close(); //******************************************************** |
MYSQL數據庫查詢操作:
//***這段是MYSQL數據庫查詢的操作************************* 前2行得到1個完整的對象絕對位置.第一行得到主機數據庫.第二行得到數據庫中的數據表a //建立1個mysql連接對象並且直接初始化連接字符串.這樣簡約 MySqlConnection myConnnect = new MySqlConnection("server=localhost;User Id=root;password=123456;Database=aa"); //在屏幕上有2個datetimepicker日期時間輸入控件,可以根據輸入的2個時間,查詢得到2個時間之間的所有數據 string SQL= string.Format("select * from a where daytime between '{0}' and '{1}'", dateTimePicker1.Value, dateTimePicker2.Value); DataSet ds = new DataSet();//新建1個數據集 MySqlCommand cmd = new MySqlCommand(SQL, myConnnect);//新建立1個數據庫命令對象用來執行你下達的命令,命令就是上面的命令字符串SQL myConnnect.Open();//打開數據庫 MySqlDataAdapter dd = new MySqlDataAdapter(cmd);//只有查詢數據庫才會用到適配器對象,用來存儲上面的命令執行后得到的數據內容. dd.Fill(ds);//然后把內容填充到數據集對象 myConnnect.Close();//操作完成關閉數據庫 //*******************************************************
|
MYSQL數據庫刪除操作:
MySqlConnection myConnnect = new MySqlConnection("server=localhost;User Id=root;password=123456;Database=aa"); string sql2 = "delete from a order by daytime limit 10";//會刪除最舊的日期時間的10行 string sql2 = "delete from a order by daytime desc limit 10";//會刪除最新日期時間的10行,這2行按需要選1行使用 MySqlCommand cmd1 = new MySqlCommand(sql2, myConnnect); myConnnect.Open();//打開數據庫 int k = cmd1.ExecuteNonQuery();//執行動作 MessageBox.Show("已刪除" + k.ToString() + "條記錄"); myConnnect.Close();//操作完成關閉數據庫
|