上一期使用"數據源配置嚮導"產生連接字符串,然後再進行和Access數據庫的連接,由datagridview控件來顯示數據。
其實,也可以用程序代碼來實現與Access數據庫的連接,並進行提取和存入數據:
1、導入相關的命名空間
2、用connection對象來連接數據庫
3、創建command對象,並執行結構查詢語句
4、用DataReader對象來獲取查詢結果
導入命名空間
使用System.Data.OleDb命名空間,適用於Access數據庫,system.data.oledb命名空間的常用類如下
· OleDbCommand(針對數據源執行的SQL語句或者存儲過程)
· OleDbConnection(建立數據源的連接)
· OleDbDataAdapter(數據命令集和數據庫連接,用來填入DataSet並更新數據源)
· OleDbDataReader(提供數據源讀取數據行的方法)
創建項目後,如果想要連接Access數據庫,則必須導入System.Data.OleDb命名空間:
using System.Data.OleDb;
用connection對象連接數據庫:
不同的數據庫需要不同的connection對象,Access數據庫使用OLEDB,所以要用OleDbConnection 對象來創建連接,其構造函數的語法是:
public oledbconnection(string connectionstring);
connectionstring表示用來打開數據庫的連接。所以,要用OleDbConnection類來創建對象並指定連接的字符串。
下面來創建OleDbConnection對象conn,並指定連接字符串:
OleDbConnection conn;
conn=new OleDbConnection(connstring);
這裡面connstring為指定數據源的連接字符串:
connstring = "Provider=microsoft.ace.oledb.12.0;Data Source=G:\\data.accdb"
Provider屬性:如果使用Access2007以後的版本,則用"microsoft.ace.oledb.12.0",否則對於低版本的則使用"microsoft.jet.oledb.4.0"
Data Source屬性:數據源,指定目標文件所在路徑
在完成connection對象創建後,用Open方法來打開數據庫:
· OleDbConnection類的常用成員有:
· ConnectionString,獲取或者設置打開數據庫的字符串
· ConnectionTimeout:產生錯誤前嘗試終止連接的等待時間
· Database:獲取或設置要連接的數據庫名稱
· DataSource:獲取或設置要連接的數據源名稱
· Provider:獲取連接字符串
· Close():關閉數據庫的連接
· Dispose():釋放所佔用的資源
· Open():打開數據庫的連接
連接數據庫後,就可以讀取數據庫中數據表的內容啦。
可以使用DataAdapter類進行載入數據,下面這段程序代碼就可以實現數據的讀取任務了,不過要在界面放入一個dataGridView控件,可以藉助它來顯示數據庫中的內容,請看下面的代碼:
string connstring;
OleDbConnection conn;
connstring = @"Provider = microsoft.ace.oledb.12.0;Data Source = F: \\學生數據庫.accdb";
conn=new OleDbConnection(connstring);
OleDbDataAdapter copp = new OleDbDataAdapter("select * from 學生信息表", conn);
DataSet ds = new DataSet();
copp.Fill(ds, "學生信息表");
this.dataGridView1.DataSource = ds.Tables["學生信息表"].DefaultView;
conn.Close();
conn.Dispose();
上面值得說明的是DataAdapter類的方法Fill的作用是將數據表的數據加載到DataSet對象中,然後指定dataGridView控件的DataSource屬性顯示數據表中的內容:
this.dataGridView1.DataSource = ds.Tables["學生信息表"].DefaultView;
運行程序:
點擊讀取數據庫:
大功告成!
你若要喜愛你自己的價值,你就得給世界創造價值。——歌德
閱讀更多 軟件數據庫教學 的文章