发布网友 发布时间:2022-04-08 11:23
共1个回答
热心网友 时间:2022-04-08 12:52
如果希望调试 SQL CLR 对象,则还应部署关联的符号文件 (.pdb)。注意除了分三个独立的步骤进行生成、部署和调试外,也可以使用“启动”命令(F5) 生成程序集,再将其部署到数据库并调试数据库对象。选择“开始执行(不调试)”命令(Ctrl+F5) 可生成程序集并将其部署到数据库。如果希望部署需要 XML 序列化程序程序集的 SQL CLR 数据库项目,则必须确保项目已配置为在您部署 SQL CLR 数据库项目时创建该程序集。有关更多信息,请参见如何:为使用 SQL Server 公共语言运行时集成的数据库对象创建项目。重要事项您必须具有适当的权限才能将新的或更新后的 SQL CLR 程序集部署到目标数据库。有关更多信息,请参见执行Visual Studio 的数据库功能所需的权限。将项目配置为部署符号来启用调试在“解决方案资源管理器”中,右击要配置的 SQL CLR 数据库项目,然后单击“属性”。单击“部署”选项卡。选中“部署代码”复选框。注意默认情况下,“部署代码”处于启用状态,并且在部署程序集时将部署符号。在“文件”菜单上,单击“保存选定项”。部署SQL Server 项目中的项到 SQL Server通过从“生成”菜单中选择“生成 <项目名>”来生成项目。注意在部署前纠正所有生成错误。从“生成”菜单中选择“部署 <项目名>”。如果收到通知您无法部署该项目的消息,则可能需要在服务器上手动创建程序集。此错误通常是项目中引用的程序集导致的。有关如何手动部署程序集的更多信息,请参见 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 CLR 对象部署到目标数据库后调试此对象:在项目中使用 Test.sql 脚本调试 SQL CLR 对象。有关更多信息,请参见如何:编辑 Test.sql 脚本以运行使用 SQL Server 公共语言运行时集成的对象。通过SQL Server 上的查询调用项执行该项。例如,如果部署了一个存储过程,则可以通过调用 EXEC <StoredProcereName> 并传入任何预期的参数来运行该过程。有关更多信息,请参见如何:运行存储过程和用户定义的函数。请参见任务如何:为使用 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