如何在sql中动态地为N个客户端创建克隆数据库的副本。
要求如下。
我有一个专门针对超级管理员角色的超级管理员数据库,如果有任何新客户端,超级管理员将获得这些客户信息并保存。
在保存过程中,我需要为客户端创建一个数据库副本,并提供客户端信息。
对于N个客户来说同样如此..
如何使用现有表格动态地训练此逻辑。
答案 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/)
祝你好运!版