第 1 课:在 Visual Studio 中创建 DAC

在本课中,您将在 Visual Studio 2010 中创建示例 DAC 项目,然后生成后续课程中使用的 DAC 包。本课中的所有步骤均在 Visual Studio 中执行。

步骤

在 Visual Studio 中创建 DAC 项目

  1. 打开 Microsoft Visual Studio。

  2. 在**“文件”菜单中,指向“新建”,然后单击“项目”**。

  3. 在**“新建项目”对话框的“已安装的模板”下,展开“数据库”**节点,然后单击 SQL Server 节点。

  4. 在模板列表中,单击**“数据层应用程序”**。

  5. 在**“名称”**中,键入 SampleDAC

  6. 接受默认的**“位置”“解决方案名称”**。

  7. 如果尚未选中**“创建解决方案的目录”**复选框,请选中此复选框。

  8. 如果尚未清除**“添加到源代码管理”复选框,请清除此复选框,然后单击“确定”**。

    将创建 SampleDAC 项目。

    接下来,您将编辑项目属性。

配置 DAC 项目

  1. 查看**“解决方案资源管理器”**以确认是否已创建 SampleDAC 项目并已打开它。

  2. 查看**“架构视图”**以确认 SampleDAC 项目在此处是否可用。

  3. 在**“解决方案资源管理器”中,展开 SampleDAC 节点,右键单击“属性”节点,然后选择“打开”**。

  4. 在**“项目设置”**选项卡上,观察默认设置,但在本课程中不对其进行更改。

  5. 选择**“生成”选项卡。如果在部署 DAC 时想要更改数据库的排序规则,请在“数据库排序规则”**框中选择新的排序规则。观察其他设置,但不更改它们。通过这些设置,生成该项目时将创建 SampleDAC.dacpack 文件用于部署 DAC。

  6. 选择**“生成事件”**选项卡。观察可用设置,但不更改它们。

  7. 选择**“部署”选项卡。如果您从 Visual Studio 中部署 DAC,这些设置将控制操作。单击“目标连接字符串”框旁边的“编辑”按钮。系统将打开“连接到 SQL Server”对话框。在连接对话框中,为运行 SQL Server 2008 Service Pack 2 或更高版本的数据库引擎实例填充连接信息。单击“确定”后,此对话框将生成一个连接字符串,并将其放置在“部署”选项卡上的“目标连接字符串”**框中。

  8. 选择**“代码分析”**选项卡。观察在对 DAC 项目执行代码分析时可启用的一组规则,但不更改它们。

  9. 关闭“项目属性”对话框。

    现在,您已创建了一个 SampleDAC 项目并已配置了它的属性。

  10. 下一步,您将配置服务器选择策略。

配置服务器选择策略

数据层应用程序包含一个服务器选择策略,此策略定义 SQL Server 数据库引擎实例为承载 DAC 所应满足的条件。在部署 DAC 时,数据库管理员可以选择忽略策略评估结果。

配置服务器选择策略

  1. 在**“解决方案资源管理器”中,依次展开 SampleDAC 节点和“属性”节点。右键单击 Serverselection.sqlpolicy,然后单击“打开”**。

  2. 在**“方面属性”**窗格中,选择 IsCaseSensitive

  3. 在**“编辑值”对话框中,将“值”**属性设置为 True 或 False,以匹配将在其中部署 DAC 的数据库引擎实例的默认排序规则。

  4. 单击**“确定”**按钮。

    您现在已配置了服务器选择策略,以测试数据库引擎实例的默认排序规则是否区分大小写。

    接下来,您将向该项目中添加一个表。

添加表并生成 DAC

现在已配置了 DAC 项目,下面的步骤将说明如何向项目中添加对象,然后生成并部署 DAC 包。

将表添加到该项目

  1. 在**“架构视图”中,展开 SampleDAC 节点,然后展开“架构”**节点,再展开 dbo 架构的节点。

  2. 右键单击**“表”节点,选择“添加”,然后单击“表”**。

  3. 在**“添加新项”对话框中,确保选中“表”模板,然后更改该对话框底部的“名称”框中的值以显示 Customer。单击“添加”**按钮。现在已为名为 SampleTable.table.sql 的文件打开“Transact-SQL 编辑器”窗口。

  4. 在“Transact-SQL 编辑器”窗口中,编辑如下所示的 CREATE TABLE 语句:

    CREATE TABLE [dbo].[Customer]
    (
        [CustomerID]   INT           PRIMARY KEY,
        [CustomerName] NVARCHAR(40)  NOT NULL,
        [YTDOrders]    INT           NOT NULL,
        [YTDSales]     INT           NOT NULL
    );
    
  5. 关闭 Transact-SQL 编辑器,保存所做的更改。在**“架构视图”中,您现在应能在 dbo 节点下看到 Customer 表。在“解决方案资源管理器”**中,现在应能看到 Customer.table.sql 文件。

    您现在已将表添加到 SampleDAC 项目并可以生成项目了。

生成项目

  1. 在**“解决方案资源管理器”中,右键单击 SampleDAC 节点,然后选择“生成”**。

  2. 在**“输出”**窗口中,查看生成操作的报表。所报告的项之一是生成操作创建的 SampleDAC.dacpac 文件的路径和名称。

  3. 如果您将在其中升级 DAC 的数据库引擎实例位于单独的计算机上,则将 SampleDAC.dacpac 文件复制到可以从另一台计算机访问的位置。

    现在,您已生成了 SampleDAC 项目。可以将 .dacpac 文件传送给开发人员或数据库管理员,然后,他们可在 SQL Server Management Studio 中使用“导入数据层应用程序向导”将 DAC 部署到数据库引擎实例。

后续步骤

您已成功创建了一个示例 DAC 项目并生成了 DAC 包。接下来,您应将 DAC 部署到数据库引擎实例。请参阅第 2 课:部署数据层应用程序