1. 程式人生 > >將一個庫裡的一張表中的資料複製到另一個庫的一張表中

將一個庫裡的一張表中的資料複製到另一個庫的一張表中

首先,要在A和B資料庫中建立兩個同名同結構的表,其中B資料庫的表為目標表.

private static void SQLCH()
    {
        SqlConnection ConectionFrom = new SqlConnection("Data Source=192.168.8.9;Initial Catalog=A;uid=sa;pwd=0");//資料庫連線語句,看情況自己改
        string sqlfrom = "SELECT * FROM T_Area";//查表語句,看情況自己改
        SqlDataAdapter adfrom = new SqlDataAdapter(sqlfrom, ConectionFrom);
        DataTable dtfrom = new DataTable();
        adfrom.Fill(dtfrom);

        SqlConnection ConectionTo = new SqlConnection("Data Source=121.101.223.237,19019;Initial Catalog=B;uid=lsm;pwd=000");//資料庫連線語句,看情況自己改

        string sqlto = "SELECT * FROM T_Area";  //查表語句,看情況自己改
        SqlDataAdapter adto = new SqlDataAdapter(sqlto, ConectionTo);
        DataTable dtto = new DataTable();
        adto.Fill(dtto);//填結構

        // dtto = dtfrom.Copy();//不好用
        //dtto.Merge(dtfrom);//不好用
        for (int i = 0; i < dtfrom.Rows.Count; i++)
        {
            DataRow dr = dtto.NewRow();//根據datatable結構新建行
            for (int j = 0; j < dtfrom.Columns.Count; j++)
            {
                dr[j] = dtfrom.Rows[i][j];//複製
            }
            dtto.Rows.Add(dr);//新增該行
        }
        SqlCommandBuilder cb = new SqlCommandBuilder(adto);
        adto.Update(dtto);//可以理解為把記憶體中的ds值寫入資料庫用
       
    }