比如说使用函数: protected DataTable Read()
{
                           string cns="data source=localhost;initial catalog=CommArticles;password=grt;persist security info=True;user id=sa;packet size=4096;max pool size=20;min pool size=0";
SqlConnection cn = new SqlConnection(cns);
SqlCommand cm;
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
string strSQL="";
try
{
cn.Open();
strSQL="SELECT TargetID, TargetName FROM NewsTarget WHERE Enable=1";
cm= new SqlCommand(strSQL,cn);
da.SelectCommand=cm;
da.Fill(ds,"list");
}
catch(Exception err)
{
//
}
finally
{
cm=null;
da=null;
if (cn.State!=ConnectionState.Closed) cn.Close();
cn=null;
}
return ds.Tables["list"];

}这是用SQL取出了数据之后放在了DataSet里面,如果利用这个东东再复制到另外一台SQL Server里面呢?Thx~~~

解决方案 »

  1.   

    直接把DATASET弄进去,估计不行。
    只能一条条记录从DATASET里读出来,然后INSERT到另一个中去。
    …………
      

  2.   

    函数返回值已经是一个DataTable了吧,不过请问具体语法应该是怎么样的呢?Thx~~
      

  3.   

    use SqlDataAdpter.update(DataSet)
      

  4.   

    slhuang说的方法可行,我就这样做的.
      

  5.   

    修改DataSet 以后用, SqlDataAdapter 对象的Update 方法更新回数据库
      

  6.   

    SqlDataAdapter Adpt=new SqlDataAdapter(SQL,Cnn);

    Adpt.Fill(DataSet,"Table");
    SqlCommandBuilder cmd=new SqlCommandBuilder();
    cmd.DataAdapter =sqlCmd.Adpt;
    //设定更新命令
    sqlCmd.Adpt.UpdateCommand = cmd.GetUpdateCommand();
    //设定插入命令
    sqlCmd.Adpt.InsertCommand = cmd.GetInsertCommand(); sqlCmd.Adpt.Update(sqlCmd.Dst,"Table");