先介紹下關於數據庫的連接:
我們首先通過connection對象對數據連接:
string str1 = Application.StartupPath;
string str = "provider=Microsoft.Jet.OLEDB.4.0; data Source="+str1+@"\telephone.mdb; Persist Security Info=False";
OleDbConnection conn = new OleDbConnection(str);
在連接字符串中:provider=指的是提供服務的文件,data sourc=指的是數據庫文件所在的位置,persist security info=指的是是否保存安全信息,其實可以簡單的理解爲"ADO在數據庫連接成功後是否保存密碼信息"。
在接着就是datagriviewdatasource了,在這裏我們可以通過兩種方法來實現:
第一,我們可以設置datagriview的數據綁定實現:
首先我們在工具欄中選擇datagrivew添加,這是在其右上方我們可以發現一個按鈕,點擊即可:
然後點擊選擇數據源按鈕即可添加:
進入到了數據源選擇界面:我們可以選擇數據集,隨後就可以了(自行選擇數據文件,及位置,這裏不再介紹)。
第二種:通過代碼實現數據庫與datagriview的綁定:
在datagriview中有一個datasource成員我們將其指定爲連接獲得數據源dataset即可:
對於dataset,我們需要通過建立connection conn連接,在通過conn.open(),實現連接數據庫,在同dataAdapter da獲取數據集,再通過da.fill(ds,"phone")方法將數據集加入進dataset["phone"]中。
代碼如下:
private void Form1_Load(object sender, EventArgs e)
{
// TODO: 這行代碼將數據加載到表“telephoneDataSet.telephoneinfo”中。您可以根據需要移動或刪除它。
this.telephoneinfoTableAdapter.Fill(this.telephoneDataSet.telephoneinfo);//自動添加??
enter form = new enter();
form.ShowDialog();
if (enter.flag == 0)
{
this.Close();
}
dgv.DataSource = bandsource().Tables["phone"];
}
public DataSet bandsource()
{
string str1 = Application.StartupPath;
string str = "provider=Microsoft.Jet.OLEDB.4.0; data Source="+str1+@"\telephone.mdb; Persist Security Info=False";
OleDbConnection conn = new OleDbConnection(str);
ds = new DataSet();
try
{
conn.Open();
string sqlstr = "select telephoneinfo.PersonID as 自動編號,telephoneinfo.Name as 姓名,telephoneinfo.Sex as 性別,telephoneinfo.OfficeTel as 辦公室電話,telephoneinfo.HomeTel as 家庭電話,telephoneinfo.Mark as 備註 from telephoneinfo order by PersonID";
da = new OleDbDataAdapter(sqlstr, conn);
da.Fill(ds, "phone");
}
catch(Exception e)
{
MessageBox.Show(e.Message);
}
finally
{
conn.Close();
}
return ds;
}