作者sartsky (....)
看板C_Sharp
標題有關OleDbCommand的問題
時間Fri Nov 11 16:23:29 2005
我將Acess資料庫的資料放到datagrid上...
希望能直接在datagrid上直接修改...
我的程式碼如下:
public OleDbDataAdapter myadapter;
public DataSet mydataset=new DataSet();
private void Form1_Load(object sender, System.EventArgs e)
{
string connstring
="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=testupdate.mdb";
OleDbConnection conn=new OleDbConnection(connstring);
string selectCmd;
selectCmd="Select * From test1";
myadapter=new OleDbDataAdapter(selectCmd,conn);
label1.Text="";
int num=myadapter.Fill(mydataset,"測試");
label1.Text="共"+num+"筆資料";
datagrid1.SetDataBinding(mydataset,"測試");
OleDbCommand iCmd
= new OleDbCommand("Insert into test1 (姓名,現任職稱) VALUES (?,?,?)", conn);
iCmd.Parameters.Add(new OleDbParameter("姓名", OleDbType.Char, 50));
iCmd.Parameters.Add(new OleDbParameter("現任職稱", OleDbType.Char, 50));
myadapter.InsertCommand=iCmd;
OleDbCommand uCmd
= new OleDbCommand("Update test1 Set 姓名=?, 現任職稱", conn);
uCmd.Parameters.Add(new OleDbParameter("姓名", OleDbType.Char, 50));
uCmd.Parameters.Add(new OleDbParameter("現任職稱", OleDbType.Char, 50));
myadapter.UpdateCommand=uCmd;
OleDbCommand dCmd
= new OleDbCommand("DELETE FROM test1 WHERE 姓名=?", conn);
dCmd.Parameters.Add(new OleDbParameter("姓名", OleDbType.Char,50));
myadapter.DeleteCommand=dCmd;
}
private void update1_Click(object sender, System.EventArgs e)
{
int num=myadapter.Update(mydataset,"測試");
label1.Text="共"+num+"筆資料修改";
}
結果在run時卻發生
類型 'System.Data.OleDb.OleDbException'
的未處理例外狀況發生於 system.data.dll
我一直百思不解...請問各位高手這是什麼情況...謝謝高手們
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.105.116.11
→ EricTsai:你沒說哪一行啊 11/11 16:39
推 liunate:把比較詳細的錯誤訊息PO出來瞧瞧 11/11 20:42