創建一個數據庫wsq
里面有一張beyondyanyu表
表里面有id(int)、names(varchar)、count(int)、passwords(varchar)
數據可以自己添
1、導入MySQL引用,你需要從官網或者其他地方下載,私聊我也可以
using MySql.Data.MySqlClient;
2、創建MySqlConnection對象(主要是為了連接mysql)
string connstr = “database=yanyu.net;Password=beyond;User ID=root;server=localhost;pooling=false;charset=utf8”;
MySqlConnection conn = new MySqlConnection(connstr);
connstr 對應于VS里面的連接字符串
Password和User ID就不用多說了吧,代表密碼和用戶名
database為數據庫wsq
3、創建對應操作的MySqlCommand對象
string sql = “select * from beyondyanyu”;
MySqlCommand cmd = new MySqlCommand(sql,conn);
beyondyanyu為wsq數據庫里面的一個表
4、針對不同操作,MySqlCommand對象有三個常用方法
方法一:
ExecuteScalar()
它用于查找某個指定或全部的內容,然后返回object對象
string sql = “select count from beyondyanyu where id=1”;
MySqlCommand cmd = new MySqlCommand(sql2,conn);
conn.Open();
string count = cmd.ExecuteScalar().ToString();
int a = int.Parse(count);
conn.Close();
這里的names就是所獲得的數據庫中id=1所對應的names值
場景使用:比如庫存不足需要補貨的時候,count可以通過強轉成int類型a,然后判斷庫存是否充足
方法二:
ExecuteNonQuery()
它用于增刪改,然后返回值為0或1,1代表操作成功,0代表操作失敗
這里以增加insert為例,刪除delete和修改update類似,輸入正確的sql語句即可
string sql = “insert into beyondyanyu (names,passwords) values (‘wangsiqi’,‘19981014’)”;
MySqlCommand cmd = new MySqlCommand(sql,conn);
conn.Open();
int yy = cmd.ExecuteNonQuery();
if (yy == 0) MessageBox.Show(“操作成功!!!”);
else MessageBox.Show(“操作失敗!!!”);
conn.Close();
可以用來注冊和登錄等功能的實現
方法三:
ExecuteReader()
它用于查找多行,可以用getXXX()方法讀取屬性值,XXX可以是不同的數據類型,比如Int32、String等
IsDBNull(列id)方法判斷是否為空,例如**IsDBNull(1)**表示表中第一列是否為空
conn.Open();
MySqlDataReader reader = cmd.ExecuteReader();
reader.GetInt32(“id”);//獲取類型為int的id字段
reader.GetString(“names”);//獲取類型為string的names字段
reader.GetString(“passwords”);//獲取類型為string的passwords字段
if (reader.IsDBNull(2)){//第二列為空
MessageBox.Show(“該列為空”);
}