能否用同一个OracleDataAdapter向同一个DataSet中多次添加不同查询结果
比如:
str = "SELECT * FROM TBL_STEP WHERE ULD_ID = 1 AND TRANS_ORT = '正向'";
OracleConnection conn=new OracleConnection(ConnectionString);
OracleDataAdapter oda = new OracleDataAdapter (str,conn);
DataSet ds = new DataSet ();
oda.Fill (ds,"tbl_step");.//第一次填充
//能否这样用
str = "SELECT * FROM PATH";//是SELECT查询,不是UPDATE,DELETE等
oda.SelectCommand.CommandText = str;
oda.SelectCommand .Connection = conn;
oda.Fill (ds,"PATH");.//
我这样做提示是错误的,如果可以用,正确格式怎么写?
比如:
str = "SELECT * FROM TBL_STEP WHERE ULD_ID = 1 AND TRANS_ORT = '正向'";
OracleConnection conn=new OracleConnection(ConnectionString);
OracleDataAdapter oda = new OracleDataAdapter (str,conn);
DataSet ds = new DataSet ();
oda.Fill (ds,"tbl_step");.//第一次填充
//能否这样用
str = "SELECT * FROM PATH";//是SELECT查询,不是UPDATE,DELETE等
oda.SelectCommand.CommandText = str;
oda.SelectCommand .Connection = conn;
oda.Fill (ds,"PATH");.//
我这样做提示是错误的,如果可以用,正确格式怎么写?
string str = "SELECT * FROM TBL_STEP WHERE ULD_ID = 1 AND TRANS_ORT = '正向';SELECT * FROM PATH";
OracleDataAdapter oda = new OracleDataAdapter (str,conn);
DataSet ds = new DataSet();
//将TBL_STEP1 的源表映射到 DataSet 表 PATH
oda.TableMappings.Add("TBL_STEP1","PATH");
oda.Fill(ds);
for(int i = 0 ; i < ds.Tables.Count ; i ++ )
Response.Write(ds.Tables[i].TableName + "<br />");
高歌:谢谢,我将尝试你的用法.
QQMagicer:我在写第二条之前用了 oda.Dispose();(未将对象引用设置到对象实例)现在去掉,一切解决了.
结帖.