iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 18
0
Software Development

轉職初新者系列-C#初學攻略心法系列 第 18

[2018鐵人賽Day18]C#初學攻略心法-黑暗魔書(Access)的精神讀取

  • 分享至 

  • xImage
  •  

嗯,大神,你怎不早點出現啊,虧我花費了N年的時光(碼農說到)
呃...這技術你要用N年,你還是別當賢者好了,當鹹者好了!
別這樣嗎~我可以以身相許的
呃,不用了,要是沒有什麼問題,我先走一步

蛋幾勒,腳下留人!
請問大神,那書的內容該怎讀取呢?

你乾脆說你全不會好了...
我是不會啊!
眾人:呃...

==============================

[Step by Step簡易實戰]
Step1.
請開啟Day17的方案

Step2.
多拉出1個Label、1個TextBox、1個Button、1個DataGridView

TextBox取名為TableName
Button取名為SelectBtn

https://ithelp.ithome.com.tw/upload/images/20180106/20091333U7tVySBN18.jpg

Step3.
在資料庫裡頭,新增一張table表,並新增Value1、Value2

https://ithelp.ithome.com.tw/upload/images/20180106/20091333NxTd2OtWfZ.jpg

Step4.
點擊Button撰寫相關功能Code,並引入相關參考組件

OleDbCommand 類別:表示要對資料來源執行的 SQL 陳述式或預存程序
OleDbDataAdapter 類別:代表一組資料命令和一個資料庫連接,用來填入 DataSet 並更新資料來源
DataTable 類別:表示記憶體中資料的一個資料表

string DBName = "Database.accdb"; //資料庫名稱
OleDbConnection connection = new OleDbConnection(@"Provider=Microsoft.ACE.Oledb.12.0;Data Source=.\" + DBName + ";");
connection.Open();

String queryString;
queryString = "SELECT * FROM " + TableName.Text;

OleDbCommand command = new OleDbCommand(queryString, connection);

OleDbDataAdapter dataAdpter = new OleDbDataAdapter(queryString, connection);
DataSet DataSetValue = new DataSet();
DataSetValue.Clear();
dataAdpter.Fill(DataSetValue);

DataTable DataTable = new DataTable();
DataTable.Columns.Add("代碼");
DataTable.Columns.Add("數值一");
DataTable.Columns.Add("數值二");

for (int i = 0; i < DataSetValue.Tables[0].Rows.Count; i++)
{
DataTable.Rows.Add(new string[] { DataSetValue.Tables[0].Rows[i]["id"].ToString(),
                                  DataSetValue.Tables[0].Rows[i]["Value1"].ToString(),
                                  DataSetValue.Tables[0].Rows[i]["Value2"].ToString() });
}

dataGridView1.DataSource = DataTable;

//自動調整寬度
dataGridView1.AutoResizeColumns();

https://ithelp.ithome.com.tw/upload/images/20180106/20091333jEPRGry8ht.jpg

https://ithelp.ithome.com.tw/upload/images/20180106/20091333YSZydfhorR.jpg

Step5.
按下F5執行程式,測試看看是否功能正確吧

https://ithelp.ithome.com.tw/upload/images/20180106/20091333zTsMS68n62.jpg

參考資料:
Microsoft OleDbCommand 類別
https://msdn.microsoft.com/zh-tw/library/system.data.oledb.oledbcommand(v=vs.110).aspx

Microsoft OleDbDataAdapter 類別
https://msdn.microsoft.com/zh-tw/library/system.data.oledb.oledbdataadapter(v=vs.110).aspx

Microsoft DataTable 類別
https://msdn.microsoft.com/zh-tw/library/system.data.datatable(v=vs.110).aspx


上一篇
[2018鐵人賽Day17]C#初學攻略心法-黑暗魔書(Access)的精神連結
下一篇
[2018鐵人賽Day19]C#初學攻略心法-黑暗魔書(Access)的精神寫入
系列文
轉職初新者系列-C#初學攻略心法30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言