使用OleDbCommandBuilder轻松更新ORACLE数据库
使用OleDbCommandBuilder轻松更新ORACLE数据库(同样的方法可以更新sql数据库
)
下面是一段删除数据库中一行的源程序:
通过对DataSet中的表的行Delete,行被标记为Deleted,然后调用DataSet(或
DataTable)的GetChanges 方法,最后调用OleDbDataAdapter的update方法,数据
库就成功更新了,但是别忘了用DataSet的AcceptChanges方法更新DataSet,这样
DataSet才会与数据库一致哦。当然,添加和update就和delete大同小异了。
public class delete : System.Web.UI.Page
{
OleDbConnection conn=null;
private void Page_Load(object sender, System.EventArgs e)
{
try
{
string m_sviName="comy";
string m_userName="qhxm";
string m_pwdName="qhxm";
string constr="Provider=MSDAORA.1;
Password="+m_pwdName+";Persist Security Info=True;User
ID="+m_userName+";Data Source="+m_sviName+";Extended Properties=''";
OleDbConnection conn=new OleDbConnection (constr);
string ssql="select * from score";
OleDbDataAdapter adapter = new OleDbDataAdapter();
adapter.SelectCommand = new OleDbCommand (ssql,conn);
OleDbCommandBuilder custCB = new
OleDbCommandBuilder(adapter);
DataSet ds=new DataSet ();
adapter.Fill (ds,"score");
DataTable dt=ds.Tables ["score"];
DataView dv=new DataView (dt,"id=1003","id",
DataViewRowState.CurrentRows );
for(int i=0;i<dv.Count ;i++){
dv.Delete (i);
}
DataSet nds=ds.GetChanges (DataRowState.Deleted );
adapter.Update (nds,"score");
ds.AcceptChanges ();
this.Response.Write ("Delete Successfully!");
}
catch(Exception exc)
this.Response.Write(exc.Message);
}
// 在此处放置用户代码以初始化页面
} private void Page_UnLoad(object sender, System.EventArgs e){
if(conn.State!=ConnectionState.Closed )
{
conn.Close();
}
}
使用OleDbCommandBuilder轻松更新ORACLE数据库(同样的方法可以更新sql数据库
)
下面是一段删除数据库中一行的源程序:
通过对DataSet中的表的行Delete,行被标记为Deleted,然后调用DataSet(或
DataTable)的GetChanges 方法,最后调用OleDbDataAdapter的update方法,数据
库就成功更新了,但是别忘了用DataSet的AcceptChanges方法更新DataSet,这样
DataSet才会与数据库一致哦。当然,添加和update就和delete大同小异了。
public class delete : System.Web.UI.Page
{
OleDbConnection conn=null;
private void Page_Load(object sender, System.EventArgs e)
{
try
{
string m_sviName="comy";
string m_userName="qhxm";
string m_pwdName="qhxm";
string constr="Provider=MSDAORA.1;
Password="+m_pwdName+";Persist Security Info=True;User
ID="+m_userName+";Data Source="+m_sviName+";Extended Properties=''";
OleDbConnection conn=new OleDbConnection (constr);
string ssql="select * from score";
OleDbDataAdapter adapter = new OleDbDataAdapter();
adapter.SelectCommand = new OleDbCommand (ssql,conn);
OleDbCommandBuilder custCB = new
OleDbCommandBuilder(adapter);
DataSet ds=new DataSet ();
adapter.Fill (ds,"score");
DataTable dt=ds.Tables ["score"];
DataView dv=new DataView (dt,"id=1003","id",
DataViewRowState.CurrentRows );
for(int i=0;i<dv.Count ;i++){
dv.Delete (i);
}
DataSet nds=ds.GetChanges (DataRowState.Deleted );
adapter.Update (nds,"score");
ds.AcceptChanges ();
this.Response.Write ("Delete Successfully!");
}
catch(Exception exc)
this.Response.Write(exc.Message);
}
// 在此处放置用户代码以初始化页面
} private void Page_UnLoad(object sender, System.EventArgs e){
if(conn.State!=ConnectionState.Closed )
{
conn.Close();
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货