提取没有安全数据库信息的数据库模式(Visual Studio)

时间:2017-08-02 22:27:18

标签: c# sql-server visual-studio dacpac

我正在使用VS2017,我的数据库在SQL Server 2014上运行。 我想从现有数据库创建一个SQL数据库项目。 我创建了我的sql项目,但是我遇到了一些问题:使用文件夹安全性创建了sql数据库项目,如下面的屏幕所示。

SQL project in VS 2017

有人有想法,我会有架构吗?

1 个答案:

答案 0 :(得分:1)

据我了解你的问题:

  • 您有一个数据库,其中创建了一些其他用户 分配了权限/角色。
  • 您正在VS中创建数据库项目 2017。
  • 然后导航到Project-> Import-> Database,将现有数据库模式导入项目。这会将数据库用户导入到项目中,您不希望发生这种情况。

解决方案:

请勿使用导入数据库功能。

而是使用Schema Compare生成脚本。

如何:

  1. 在VS 2017中创建一个新的空白数据库项目。
  2. 右键单击 项目并选择"架构比较..."。
  3. 将打开一个新窗口,您需要点击"选择目标..."选择现有的数据库。
  4. 重要提示:点击"切换来源和目标"按钮enter image description here以使您的数据库成为源。
  5. 点击"选项"按钮enter image description here以显示"架构比较选项"弹出窗口。
  6. 转到"对象类型"标签
  7. 取消选中:"用户","数据库角色","权限"以及您不想导入的任何其他对象类型
  8. 单击确定以保存并关闭"架构比较选项"弹出窗口
  9. 点击"比较"按钮enter image description here
  10. 您将获得一个差异列表,您可以在其中进一步排除单个对象: enter image description here
  11. 点击"更新"用于编写对象脚本的按钮。