数据更新的问题
string sID=((myNode)e.Node).ID.ToString();
// 定义数据库连接
System.Data.OleDb.OleDbConnection CN = new System.Data.OleDb.OleDbConnection();
//初始化连接字符串
CN.ConnectionString=@"Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Database Password=;Data Source=""C:\Documents and Settings\guoj.TSERVER\桌面\1.mdb"";Password=;Jet OLEDB:Engine Type=5;Jet OLEDB:Global Bulk Transactions=1;Provider=""Microsoft.Jet.OLEDB.4.0"";Jet OLEDB:System database=;Jet OLEDB:SFP=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:New Database Password=;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet OLEDB:Encrypt Database=False";
CN.Open();
System.Data.OleDb.OleDbDataAdapter adp = new System.Data.OleDb.OleDbDataAdapter("select * from 表3",CN);
System.Data.OleDb.OleDbCommandBuilder myCommandBuilder1 = new System.Data.OleDb.OleDbCommandBuilder(adp) ;
System.Data.OleDb.OleDbCommand cmd;
cmd = new System.Data.OleDb.OleDbCommand("update 表3 set ConText="+e.Label+" where ID="+sID,CN);
cmd.CommandType=CommandType.Text;
adp.UpdateCommand=cmd;
ds=new DataSet();
adp.Fill(ds,"表3");
cmd.ExecuteNonQuery();
adp.Update(ds,"表3");
ds.AcceptChanges();
这段程序为什么更新不了数据库呢?语法没有问题,也不报错。SQL语句也是对的
问题点数:20、回复次数:5Top
1 楼junjunhao()回复于 2005-06-02 19:29:12 得分 0
对更新的机制还不是了解的很透,高手可指点一二。
一般我用myCommandBuilder1绑定,只要给出SELECTCOMMAND即可自动生成UPDATACOMMAND的呀、Top
2 楼junjunhao()回复于 2005-06-02 19:39:02 得分 0
没人有兴趣吗?Top
3 楼Firestone2003(笨笨小猪)回复于 2005-06-02 20:35:52 得分 10
呵呵建议差一下MSDN,有最详细的解释
PS.使用dataset就没有必要出现
cmd.ExecuteNonQuery();
Top
4 楼junjunhao()回复于 2005-06-02 22:06:47 得分 0
还是不理解Top
5 楼lyb_abiandbel(专注于OO分析与设计)回复于 2005-06-03 09:06:29 得分 10
你代码写的很多,很乱啊!
更新可以直接使用dataAdapter("update 表3 set ConText="+e.Label+" where ID="+sID,CN);
或者使用更新语句,然后在ExecuteNonQuery();
没有必要这样写啊!
简单一点再试试。Top




