0

在这里,如果我们无法获得隐私,我们开发人员在我们自己的世界中工作,然后在代码中搞砸,甚至不费心要求将生产数据库支持到开发环境。所以我有两个数据库,一个叫做 prod,另一个叫做 dev。我们真的不需要一次更新所有表,只是那些与我们的应用程序有关的表(有很多表可以在没有备份过程的情况下完成所有操作)所以鉴于我已经尝试了几个想法我实际上是从这里来的(至少其中一个)。每段代码都会执行,但是当我转到开发表时没有数据:(“这次”权限不是问题。

(1) DataRow[] 行复制;rowstoCopy = tdProd.Select(); foreach (DataRow temp in rowstoCopy) { tdDev.ImportRow(temp); }

(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 运行并打印到控制台,现在出现错误,但是当我转到 dev 表时,没有记录。第二个真的让我很烦恼,这对最终用户来说非常方便

4

1 回答 1

0

是的,做到了

字符串 strSQL = "插入 [Ops1SQLDEV].[dbo]。" + to_tb + " SELECT * FROM [Ops1SQL].[dbo]." +来自_tb;SqlCommand cmd = new SqlCommand(strSQL, conn); cmd.CommandType = CommandType.Text; conn.Open(); cmd.ExecuteNonQuery(); conn.Close();

于 2012-10-05T15:18:07.433 回答