如何:将 SQL CLR 数据库项目项部署到 SQL Server

生成 SQL Server 公共语言运行时 (SQL CLR) 数据库项目后,该项目将编译为一个之后可部署到数据库的程序集。 如果希望调试 SQL CLR 对象,则还应部署关联的符号文件 (.pdb)。

提示

除了分三个独立的步骤进行生成、部署和调试外,也可以使用“启动”命令 (F5) 生成程序集,再将其部署到数据库并调试数据库对象。 选择“开始执行(不调试)”命令 (Ctrl+F5) 可生成程序集并将其部署到数据库。

如果希望部署需要 XML 序列化程序程序集的 SQL CLR 数据库项目,则必须确保项目已配置为在您部署 SQL CLR 数据库项目时创建该程序集。 有关更多信息,请参见如何:为使用 SQL Server 公共语言运行时集成的数据库对象创建项目

重要说明重要事项

您必须具有适当的权限才能将新的或更新后的 SQL CLR 程序集部署到目标数据库。 有关更多信息,请参见执行 Visual Studio 的数据库功能所需的权限

将项目配置为部署符号来启用调试

  1. 在“解决方案资源管理器”中,右击要配置的 SQL CLR 数据库项目,然后单击“属性”。

  2. 单击**“部署”**选项卡。

  3. 选中**“部署代码”**复选框。

    提示

    默认情况下,“部署代码”处于启用状态,并且在部署程序集时将部署符号。

  4. 在**“文件”菜单上,单击“保存选定项”**。

部署 SQL Server 项目中的项到 SQL Server

  1. 通过从**“生成”菜单中选择“生成 <项目名>”**来生成项目。

    提示

    在部署前纠正所有生成错误。

  2. 从**“生成”菜单中选择“部署 <项目名>”**。

    如果收到通知您无法部署该项目的消息,则可能需要在服务器上手动创建程序集。 此错误通常是项目中引用的程序集导致的。 有关如何手动部署程序集的更多信息,请参见 Microsoft 网站上的 Create Assembly (Transact-SQL)

    重要说明重要事项

    SQL Server 2005 和 SQL Server 2008 只支持使用 .NET Framework 2.0、3.0 或 3.5 版生成的 SQL Server 项目。 如果您尝试部署SQL Server项目,SQL Server 2005或SQL Server 2008,将显示错误消息: Deploy error (SQL01268): .NET SqlClient Data Provider: Msg 6218, Level 16, State 3, Line 1 CREATE ASSEMBLY for assembly 'AssemblyName' failed because assembly 'AssemblyName' failed verification. Check if the referenced assemblies are up-to-date and trusted (for external_access or unsafe) to execute in the database(在进行校验是您要部署的程序集的名称)。 有关更多信息,请参见如何:为使用 SQL Server 公共语言运行时集成的数据库对象创建项目

后续步骤

将 SQL CLR 对象部署到数据库之后,将可能需要运行该项对其进行测试。

测试部署的数据库项

请参见

任务

如何:为使用 SQL Server 公共语言运行时集成的数据库对象创建项目

如何:通过使用公共语言运行时集成创建和运行 SQL Server 存储过程

如何:通过使用公共语言运行时集成创建和运行 SQL Server 触发器

如何:通过使用公共语言运行时集成创建和运行 SQL Server 聚合

如何:通过使用公共语言运行时集成创建和运行 SQL Server 用户定义的函数

如何:通过使用公共语言运行时集成创建和运行 SQL Server 用户定义的类型

演练:使用托管代码创建存储过程

如何:调试 SQL CLR 存储过程

参考

“项目设计器”->“部署”页

SQL CLR 数据库项目和数据库对象的特性

概念

SQL Server CLR 集成简介 (ADO.NET)

使用托管代码创建数据库对象的好处

在托管代码中创建 SQL Server 对象

其他资源

SQL CLR Database Debugging