項目目的:
連接mysql查詢數據並將數據顯示到界面的datagridview裡面.
Step1:添加動態連結庫文件
Visual Studio,在 項目(右鍵)-管理NuGet程序包(N) 然後在瀏覽裡面搜索MySql.Data並進行安裝。
Step2:using所需要的庫
using MySql.Data.MySqlClient;step3:建立連接(MySqlConnection類)
using MySql.Data.MySqlClient; public MySqlConnection connect() { String connetStr = "server=127.0.0.1;port=3306;user=root;password=a123456.; database=thzdb;"; MySqlConnection con = new MySqlConnection(connetStr);
con.Open(); Console.WriteLine("資料庫連接成功"); return con; }step4:數據查詢並顯示
Sql查詢語句獲取的數據是分格式的,我們還用SqlDataReader來做,然後用IDataReader來接收讀取,
.net中的DataGridView類是一個功能全面的顯示數據集合的控制項;綁定到DataGridView的方式有DataTable,DataSet,實現了IList<T>接口的類等;下面說一下如何簡單地將List<T>中的數據綁定到DataGridView中.
IList<Movie> movieList = new List<Movie>();this.dataGridView.DataSource = movieList;通過這兩行,在窗口界面就能看到數據能顯示到列表中了,欄標題名稱就是Movie中欄位的名稱;若想定製化具體的欄名可通過DataGridViewRow類或其它方式實現.
以下是代碼:
private void mainForm_Load(object sender, EventArgs e) { List<userInfo> userInfo = new List<userInfo>(); DB db = new DB();
using (IDataReader read = db.read("select * from userInfo")) { while (read.Read()) { userInfo a = new userInfo(); a.user_Name = read[0].ToString(); a.user_Passwd = read[1].ToString(); a.user_region = read[2].ToString(); userInfo.Add(a); } } this.dataGridView1.DataSource = userInfo; }userInfo類的代碼:
public class userInfo {
public string user_Name { get; set; } public string user_Passwd { get; set; } public string user_region { get; set; } }DB類的代碼:
using System;using MySql.Data.MySqlClient;
namespace WindowsFormsApp14{ public class DB {
public MySqlConnection connect() { String connetStr = "server=127.0.0.1;port=3306;user=root;password=a123456.; database=thzdb;"; MySqlConnection con = new MySqlConnection(connetStr);
con.Open(); Console.WriteLine("資料庫連接成功"); return con; } public MySqlCommand command(string sql) {
MySqlCommand cmd = new MySqlCommand(sql, connect()); return cmd;
} public int Execute(string sql) { return command(sql).ExecuteNonQuery();
} public MySqlDataReader read(string sql) { return command(sql).ExecuteReader(); }
}
}mysql中創建數據:
insert into thzdb.userinfo values('zyr1','a123456','陝西商洛');運行後的結果:
百度網盤下載地址:
連結:https://pan.baidu.com/s/16_jA2ObvFlVAfF3ENDNiOw
提取碼:xhlq
想了解更多C#知識,請掃描下方二維碼
需加微信交流群的,請加小編微信號z438679770,切記備註 加群,小編將會第一時間邀請你進群!
每日分享不易,"在看"就是鼓勵!