我有一个本地SQL Server Express数据库,我想将其复制到服务器上的SQL Server数据库。我没有对服务器的完全权限,所以我不能直接附加它。有人告诉我,我可以使用SqlBulkCopy
[MSDN]类来完成这项工作。
我无法弄清楚如何使用它。我没有做足够的数据库编程来熟悉这种事情是如何完成的。
基本上,我想将一个数据库中的所有表复制到另一个数据库中。表格之间存在关系,我不知道这是否会对复制产生影响。不是很多,所以只复制数据然后手动重新分配关系并不是什么大问题。
这是我可以去的
var localDatabase = new SqlConnection("connection string");
var serverDatabase = new SqlConnection("other connection string");
SomehowCopyAllTables(localDatabase, serverDatabase);
但不幸的是,C#先生并不想承认SomehowCopyAllTables
方法的存在。
如何将所有表从一个数据库复制到另一个数据库?
答案 0 :(得分:4)
在SQL Server Management Studio中使用SQL Server的Generate Scripts命令。
INSERT
个语句。
答案 1 :(得分:2)
从我的角度来看,最好的方法是在SQL Express中创建SQL脚本并在服务器上执行生成的脚本。整个数据将被复制。
答案 2 :(得分:2)
从Sql Server Management Studio生成数据库脚本:
这将仅生成模式。如果您还要执行数据生成脚本,请在步骤6)中单击“高级”按钮并向下滚动到“脚本数据类型”,然后将其从“仅架构”更改为“仅数据”或“架构和数据”
答案 3 :(得分:0)
简单地使用Atlantis Interactive的Schema Inspector和Data Inspector可能更容易,而不是自己编程。只需将架构与当前系统上的空白数据库进行比较即可。