之前用MFC開發結果界面太難看被pass了,要求用C#重新來開發>_<,不過終於擺脫VC6.0的蛋疼操作了Y。
先來連接數據庫
(1)用c#連接MySQL數據庫需要用到mysql-connector-net,這個組件網上查找就可以下載,安裝直接按next,按默認路徑安裝;
(2)新建一個Winfrom工程后,引用這個組件
在解決方案資源管理器中右鍵引用->添加引用->瀏覽,瀏覽路徑為安裝mysql-connector-net的路徑,如我的路徑為:C:\Program Files (x86)\MySQL\MySQL Connector Net 6.6.4\Assemblies\v2.0
選擇MySql.Data.dll,再確定
(3)在工程中添加:
using MySql.Data.MySqlClient; using System.Data.SqlClient;
(4)
這里進行簡單的頁面布局,用了一個按鈕,一個listview控件,一個dataGridView控件,其中listview控件名字為listview1,dataGridView控件名字為dataGridView1
(4)對listView進行簡單的設計來適合數據呈現:
在屬性中選擇GridLines改為true
新建一個函數如下:
private void bindListCiew()
{
this.listView1.Columns.Add("學生"); this.listView1.Columns.Add("ID"); this.listView1.View = System.Windows.Forms.View.Details; }
添加兩列 學生,ID 實際情況可以根據需求添加;
注意加上this.listView1.View = System.Windows.Forms.View.Details;
否則不會有變化
再
private void Form1_Load(object sender, EventArgs e) { bindListCiew(); }
(5)為按鈕添加函數:
private void button1_Click(object sender, EventArgs e)
{
MySqlConnection myconn = null; MySqlCommand mycom = null; MySqlDataAdapter myrec = null; myconn = new MySqlConnection("Host =localhost;Database=student;Username=lemon;Password=123"); myconn.Open(); mycom = myconn.CreateCommand(); mycom.CommandText = "SELECT *FROM student1"; MySqlDataAdapter adap = new MySqlDataAdapter(mycom); DataSet ds = new DataSet(); adap.Fill(ds); dataGridView1.DataSource = ds.Tables[0].DefaultView; string sql = string.Format("select * from student1 "); mycom.CommandText = sql; mycom.CommandType = CommandType.Text; MySqlDataReader sdr = mycom.ExecuteReader(); int i = 0; while (sdr.Read()) { listView1.Items.Add(sdr[0].ToString()); listView1.Items[i].SubItems.Add(sdr[1].ToString()); i++; } myconn.Close(); }
其中
myconn = new MySqlConnection("Host =localhost;Database=****;Username=***;Password=***"); myconn.Open();
為數據庫的連接,輸入Database,username,password
mycom = myconn.CreateCommand(); mycom.CommandText = "SELECT *FROM student1"; MySqlDataAdapter adap = new MySqlDataAdapter(mycom); DataSet ds = new DataSet(); adap.Fill(ds); dataGridView1.DataSource = ds.Tables[0].DefaultView;
生成一個command 查詢數據添加到dataGridView中,這里簡單地將數據全部添加進控件中,這個控件打印出來的表格不怎么好看,覺得還是listview好看
剩下的代碼是進行listview的顯示
其中
listView1.Items.Add(sdr[0].ToString()); listView1.Items[i].SubItems.Add(sdr[1].ToString()); i++;
這是對行的數據的添加;
最后的結果為:
在student1表中我數據為:
開發起來比vc6.0起來好一點;
這世界上的一切罪與罰,我們都會一起承受。