VB.NET使用ACCESS為資料庫來源時,若要使用access中的查詢或帶參數查詢的用法
一樣此篇文章也是提供自己備忘的一篇文章,無奈在各大搜尋機器上,遍尋不著相關寫法..只好硬著頭皮..使出"人轉"的大絕
一般網站上大都是跟SQL server連接,相關資源也很豐富…
不曉得是大家太厲害..我真的找到很少的資源..
以下是我試出來的結果
在access中若有制作一些查詢的功能或是帶有參數的查詢,如果到VB.NET中要用ACCESS連結使用的話
要用OLEDB的物件去連接使用
例:在我的ACCESS中,制作了一個帶參數查詢的查詢,參數一是啟始日期,參數二是結束日期,然後帶出範圍內的資料
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | '設定資料庫連線 Dim connectionString As String = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb" '設定oledbDataadpter物件,並指定查詢的名稱 Dim da As OleDbDataAdapter = New OleDbDataAdapter("查詢的名稱", connectionString) '設定dataset物件 Dim ds As DataSet '設定da的命令類別為預存程序 da.SelectCommand.CommandType = CommandType.StoredProcedure '設定bd為oledbparameter類別,並為da.selectcommand加上參數,啟始日期的參數型態設為oledbtype.date Dim bd As OleDbParameter = da.SelectCommand.Parameters.Add("@輸入啟始日期如:2008/04/01", OleDbType.Date) '設定bd為輸入參數 bd.Direction = ParameterDirection.Input 'dt1為日期選用物件 bd.Value = dt1.Text '設定ed為oledbparameter類別,並為da.selectcommand加上參數,結束日期的參數型態設為oledbtype.date Dim ed As OleDbParameter = da.SelectCommand.Parameters.Add("@輸入結束日期如:2008/04/30", OleDbType.Date) ed.Direction = ParameterDirection.Input ed.Value = dt2.Text '將資料填入 ds = New DataSet() da.Fill(ds, "work_form_query_bye_date_range_report") '設定dgv3的datagridview的資料來源 dgv3.DataSource = ds.Tables(0).DefaultView |
以上作法,即可使用ACCESS中的參數查詢物件了..
^_^
Popularity: 20% [?]

近期迴響