将数据从Production添加到Dev

时间:2012-10-04 18:02:37

标签: foreach datatable add

在这里,如果我们无法获得灵感,那么我们就会在自己的世界中开展各种工作,然后在代码中弄清楚它们,甚至不要求生产数据库被支持到开发环境。所以我有两个数据库,一个叫做prod,另一个叫做dev。我们真的永远不需要同时更新所有表格,只需要与我们的应用程序相关的表格(有许多表格可以完成备份过程) 因为我尝试了一些我从这里得到的想法(至少其中一个)。每段代码执行但当我去开发表没有数据:( 许可不是“这一次”的问题。

(1)    DataRow [] rowstoCopy;      rowstoCopy = tdProd.Select();                 foreach(rowstoCopy中的DataRow temp)                 {                     tdDev.ImportRow(温度);                 }

(2)  dsProd.Tables.Add(tdProd);                 dsDev.Tables.Add(tdDev);

            foreach(DataTable thisTable in dsProd.Tables)
            {
                DataRow DevRow;
              // For each row, print the values of each column.
                foreach(DataRow myRow in thisTable.Rows)
                {
                    DevRow = tdDev.NewRow();
                    int i = thisTable.Columns.Count -1;(could use an Array but fustration set in)
                    foreach(DataColumn myCol in thisTable.Columns)
                    {
                       DevRow[i - 1] = myRow[myCol].ToString();
                       Console.WriteLine(myRow[myCol]);
                        i += 1;
                    }

                    tdDev.Rows.Add(DevRow);

                   }
                Console.WriteLine(tdDev.Rows.Count);
            } 

Everthing运行并打印到控制台,现在出现错误,但是当我进入开发表时,没有任何记录。第二个真的让我感到困惑,这对最终用户来说非常方便

1 个答案:

答案 0 :(得分:0)

是的,做到了

string strSQL =“INSERT INTO [Ops1SQLDEV]。[dbo]。” + to_tb +“SELECT * FROM [Ops1SQL]。[dbo]。” + from_tb;             SqlCommand cmd = new SqlCommand(strSQL,conn);             cmd.CommandType = CommandType.Text;             conn.Open();             cmd.ExecuteNonQuery();             conn.Close();