C# 使用SQLite數據庫 之 讀寫數據庫

讀寫數據庫並在窗體(Form)中顯示其數據,其方式爲:

讀:

Database(SQLite) -> DataAdapter -> DataSet -> DataGridView

寫:

Database(SQLite) <- DataAdapter <- DataSet <- DataGridView

 

1、假設現有數據庫表student,其字段如下:

ID(自增字段,主鍵)

number

name

grade

1

20120001

jackey

1

 

2、DataGrideView控件和DataSet控件

在Form上拖放一個DataGrideView控件(注意:不需要指定數據源(DataSource),而只需要在代碼中對DataGridView對象的DataSource成員幅值即可);然後再拖放一個DataSet控件(此控制不在窗體上顯示出來)。

3、讀並在DataGrideView中顯示出來  

mDbConn = new SQLiteConnection("Data Source=sqlite.student.db");
mDbConn.Open();
dataAdapter = new SQLiteDataAdapter("SELECT * FROM student;", mDbConn);//讀數據庫
dataAdapter.FillSchema(dataSet1, SchemaType.Source, "student");//將數據庫表student的架構信息(此時爲主鍵約束)填充到dataSet1的student表中
dataAdapter.Fill(dataSet1, "student");//填充DataSet控件
dataGridView1.DataSource = dataSet1.Tables["Table"];//注意,DataSet中的數據表依次爲Table, Table1, Table2...
mDbConn.Close();

 

注意:

dataAdapter.FillSchema(dataSet1, SchemaType.Source, "student");//將數據庫表student的架構信息(此時爲主鍵約束)填充到dataSet1的student表中


4、寫並更新DataGrideView中

mDbConn.Open();
DataRow dataRow = dataSet1.Tables["student"].NewRow();
dataRow["number"] = "20120010";
dataRow["name"] = "李四";
dataRow["grade"] = "2";
dataSet1.Tables["Table"].Rows.Add(dataRow);
dataGridView1.Invalidate();//實時更新dataGridView1
dataAdapter.InsertCommand = new SQLiteCommand("INSERT INTO student(number, name, grade) VALUES('" + dataRow["number"] + "','" + dataRow["name"] + "','" + dataRow["grade"] + "')", mDbConn);
dataAdapter.Update(dataSet1, "student"");
mDbConn.Close();  


參數文獻
http://msdn.microsoft.com/zh-cn/library/49z48hxc(v=vs.90).aspx
http://msdn.microsoft.com/zh-cn/library/879f39d8(v=vs.80).aspx
http://msdn.microsoft.com/zh-cn/library/879f39d8(v=vs.100).aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章