首先搭建好環境
https://blog.csdn.net/qq_37171353/article/details/78173310
在環境搭建好的情況下仔細閱讀下面代碼,基本都是固定格式,需要改的地方很少
using System; using MySql.Data.MySqlClient;//新引入的命名空間 using System.Configuration;//新引入的命名空間 using System.Data; using System.Data.SqlClient; public partial class index : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void select(object sender, EventArgs e) { //獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; //連接數據庫 MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr); //建立DataSet對象(相當於建立前台的虛擬數據庫) DataSet ds = new DataSet(); //建立DataTable對象(相當於建立前台的虛擬數據庫中的數據表) DataTable dtable; //建立DataRowCollection對象(相當於表的行的集合) DataRowCollection coldrow; //建立DataRow對象(相當於表的列的集合) DataRow drow; //打開連接 sqlCon.Open(); //建立DataAdapter對象 string sltStr = "select id,username,password from user ";//重點,重點,重點,編寫符合你查詢條件的sql語句 MySqlCommand sqlCmd = new MySqlCommand(sltStr, sqlCon); MySqlDataAdapter msda = new MySqlDataAdapter(sqlCmd); //將查詢的結果存到虛擬數據庫ds中的虛擬表tabuser中 msda.Fill(ds, "tabuser"); //將數據表tabuser的數據復制到DataTable對象(取數據) dtable = ds.Tables["tabuser"]; //用DataRowCollection對象獲取這個數據表的所有數據行 coldrow = dtable.Rows; //逐行遍歷,取出各行的數據 for (int inti = 0; inti < coldrow.Count; inti++) { drow = coldrow[inti]; Label1.Text += "Id:" + drow[0]; Label1.Text += " username:" + drow[1]; Label1.Text += " password:" + drow[2] + "<br />"; } sqlCon.Close(); sqlCon = null; } protected void update(object sender, EventArgs e) { //獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; //連接數據庫 MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr); //建立DataSet對象(相當於建立前台的虛擬數據庫) DataSet ds = new DataSet(); //建立DataTable對象(相當於建立前台的虛擬數據庫中的數據表) DataTable dtable; //建立DataRowCollection對象(相當於表的行的集合) DataRowCollection coldrow; //建立DataRow對象(相當於表的列的集合) DataRow drow; //打開連接 sqlCon.Open(); //建立DataAdapter對象 string sltStr = "select id,username,password from user ";//重點,重點,重點,查詢出所有的字段 MySqlCommand sqlCmd = new MySqlCommand(sltStr, sqlCon); MySqlDataAdapter msda = new MySqlDataAdapter(sqlCmd); //建立 CommandBuilder 對象來自動生成 DataAdapter 的 Command 命令,否則就要自己編寫 //Insertcommand ,deletecommand , updatecommand 命令。 MySqlCommandBuilder mySqlCommandBuilder = new MySqlCommandBuilder(msda); //將查詢的結果存到虛擬數據庫ds中的虛擬表tabuser中 msda.Fill(ds, "tabuser"); //將數據表tabuser的數據復制到DataTable對象(取數據) dtable = ds.Tables["tabuser"]; //用DataRowCollection對象獲取這個數據表的所有數據行 coldrow = dtable.Rows; //重點,重點,重點,重點,重點,重點,重點,重點,重點 //update你的數據(update user password = 123321 where id = 1) for (int inti = 0; inti < coldrow.Count; inti++)//重點,重點,重點 { drow = coldrow[inti]; if (drow["id"].ToString() == 1 + "") { drow["password"]="123321"; } } msda.Update(ds, "tabuser");//重點,重點,重點,更新數據庫 sqlCon.Close(); sqlCon = null; } protected void delete(object sender, EventArgs e) { //獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; //連接數據庫 MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr); //建立DataSet對象(相當於建立前台的虛擬數據庫) DataSet ds = new DataSet(); //建立DataTable對象(相當於建立前台的虛擬數據庫中的數據表) DataTable dtable; //建立DataRowCollection對象(相當於表的行的集合) DataRowCollection coldrow; //建立DataRow對象(相當於表的列的集合) DataRow drow; //打開連接 sqlCon.Open(); //建立DataAdapter對象 string sltStr = "select id,username,password from user ";//重點,重點,重點,查詢出所有的字段 MySqlCommand sqlCmd = new MySqlCommand(sltStr, sqlCon); MySqlDataAdapter msda = new MySqlDataAdapter(sqlCmd); //建立 CommandBuilder 對象來自動生成 DataAdapter 的 Command 命令,否則就要自己編寫 //Insertcommand ,deletecommand , updatecommand 命令。 MySqlCommandBuilder mySqlCommandBuilder = new MySqlCommandBuilder(msda); //將查詢的結果存到虛擬數據庫ds中的虛擬表tabuser中 msda.Fill(ds, "tabuser"); //將數據表tabuser的數據復制到DataTable對象(取數據) dtable = ds.Tables["tabuser"]; //用DataRowCollection對象獲取這個數據表的所有數據行 coldrow = dtable.Rows; //逐行遍歷,取出各行的數據,並且刪除符合條件的數據(我要刪除的id為4的記錄) for (int inti = 0; inti < coldrow.Count; inti++)//重點,重點,重點,刪除符合條件的數據 { drow = coldrow[inti]; if (drow["id"].ToString() == 4+"") { drow.Delete(); } } msda.Update(ds,"tabuser");//重點,重點,重點,更新數據庫 sqlCon.Close(); sqlCon = null; } protected void insert(object sender, EventArgs e) { //獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; //連接數據庫 MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr); //建立DataSet對象(相當於建立前台的虛擬數據庫) DataSet ds = new DataSet(); //建立DataTable對象(相當於建立前台的虛擬數據庫中的數據表) DataTable dtable; //建立DataRow對象(相當於表的列的集合) DataRow drow; //打開連接 sqlCon.Open(); //建立DataAdapter對象 string sltStr = "select id,username,password from user ";//重點,重點,重點,查詢出所有的數據 MySqlCommand sqlCmd = new MySqlCommand(sltStr, sqlCon); MySqlDataAdapter msda = new MySqlDataAdapter(sqlCmd); //建立 CommandBuilder 對象來自動生成 DataAdapter 的 Command 命令,否則就要自己編寫 //Insertcommand ,deletecommand , updatecommand 命令。 MySqlCommandBuilder mySqlCommandBuilder = new MySqlCommandBuilder(msda); //將查詢的結果存到虛擬數據庫ds中的虛擬表tabuser中 msda.Fill(ds, "tabuser"); //將數據表tabuser的數據復制到DataTable對象(取數據) dtable = ds.Tables["tabuser"]; //增加記錄 drow = ds.Tables["tabuser"].NewRow(); //給該記錄賦值 drow[0] = 6;//重點,重點,重點,給id賦值 drow[1] = "6";//重點,重點,重點,給username賦值 drow[2] = "6";//重點,重點,重點,給password賦值 ds.Tables["tabuser"].Rows.Add(drow);//重點,重點,重點,將記錄添加的虛擬數據庫 //提交更新 msda.Update(ds, "tabuser"); //重點,重點,重點,更新真正的數據庫 sqlCon.Close(); sqlCon = null; } }
最后,我感覺我不喜歡這種用法,SQL語句太少,除了Select別的基本上都沒有用到,我的意見是:select用這種方法,update,insert,delete不用這種方法
ADD
//獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr);//連接數據庫 //打開連接 sqlCon.Open(); //SQL語句 string sql = "insert into user (username,password) values ('csdn','csdn')"; //獲得MySsqlCommand MySqlCommand cmd = new MySqlCommand(sql, sqlCon); //執行SQL cmd.ExecuteNonQuery(); cmd = null; sqlCon.Close(); sqlCon = null;
DELETE
//獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr);//連接數據庫 //打開連接 sqlCon.Open(); //SQL語句 string sql = "delete from user where id = 3"; //獲得MySsqlCommand MySqlCommand cmd = new MySqlCommand(sql, sqlCon); //執行SQL int updateCount=cmd.ExecuteNonQuery(); if (updateCount > 0) { Response.Write("刪除成功"); } else { Response.Write("刪除失敗"); } cmd = null; sqlCon.Close(); sqlCon = null;
UPDATA
//獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr);//連接數據庫 //打開連接 sqlCon.Open(); //SQL語句 string sql = "update user set username = 'ndsc' where password = 'csdn'"; //獲得MySsqlCommand MySqlCommand cmd = new MySqlCommand(sql, sqlCon); //執行SQL int updateCount=cmd.ExecuteNonQuery(); if (updateCount > 0) { Response.Write("更新成功"); } else { Response.Write("更新失敗"); } cmd = null; sqlCon.Close(); sqlCon = null;
SELECT
//獲得Web.config中的配置信息 string sqlCconnStr = ConfigurationManager.ConnectionStrings["MySqlStr"].ConnectionString; MySqlConnection sqlCon = new MySqlConnection(sqlCconnStr);//連接數據庫 //打開連接 sqlCon.Open(); //SQL語句 string sql = "select username from user "; //獲得MySsqlCommand MySqlCommand cmd = new MySqlCommand(sql, sqlCon); //執行SQL並且返回查詢結果 MySqlDataReader dataReader = cmd.ExecuteReader(); //處理返回結果 while (dataReader.Read()) { //string obj = dataReader.GetString(0); string obj = dataReader.GetString("username"); //Console.WriteLine(obj); Label1.Text += obj; } cmd = null; sqlCon.Close(); sqlCon = null;