如何为SQL中的N个客户端创建克隆数据库副本

时间:2015-06-10 09:20:12

标签: sql sql-server sql-server-2008

如何在sql中动态地为N个客户端创建克隆数据库的副本。

要求如下。

我有一个专门针对超级管理员角色的超级管理员数据库,如果有任何新客户端,超级管理员将获得这些客户信息并保存。

在保存过程中,我需要为客户端创建一个数据库副本,并提供客户端信息。

对于N个客户来说同样如此..

如何使用现有表格动态地训练此逻辑。

1 个答案:

答案 0 :(得分:0)

创建Visual Studio SSDT(SQL Server)项目 - 如果您还没有Visual Studio,则可以使用visual studio express。

导入表架构,如果有任何参考数据,请将其添加到post deploy脚本中。

构建项目,您将拥有.dacpac。

如果需要新数据库,请从命令提示符执行:

sqlpackage.exe /Action:publish /sourcefile:path\to\dacpac.dacpac /TargetServerName:Server /TargetDatabaseName:%NEWDATABASENAME%

您可以在批处理或PowerShell脚本中将对sqlpackage.exe的调用包装起来,以使其更简单。

如果您想从.net程序中执行此操作,可以直接调用DacFx api(http://blogs.msmvps.com/deborahk/deploying-a-dacpac-with-dacfx-api/

祝你好运!