【问题标题】:Using .NET Framework 3.5 in a SQL Server 2005 Stored Procedure在 SQL Server 2005 存储过程中使用 .NET Framework 3.5
【发布时间】:2008-12-02 21:28:50
【问题描述】:

我有一个 SQL Server 2005 服务器,我想在它上面运行一个 .Net CLR 存储过程。但是,我想使用 .NET Framework 3.5。

如果我现在尝试这个,我会得到这个错误:

Error: Assembly 'system.core, version=3.5.0.0, culture=neutral, publickeytoken=b77a5c561934e089.' was not found in the SQL catalog.

我听说这在 SQL Server 2008 中是可能的,因为 SQL Server 2008 附带 .NET Framework 3.5。但是,我想知道是否有办法将 .NET Framework 3.5 添加到我的 SQL Server 2005 安装中,以便我可以在其上运行 .NET 3.5 存储过程。

【问题讨论】:

    标签: .net sql-server-2005 .net-3.5 stored-procedures clr


    【解决方案1】:

    这可能是一个愚蠢的问题,但是...如果找不到 system.core,您是否在数据库服务器上安装了 framework 3.5?

    【讨论】:

    • 嗯,我实际上无权检查...我想我会在提出请求之前先询问一下。真的和安装 .net 3.5 运行时一样简单吗?
    • 这是最低要求。如果没有安装 3.5,您希望它如何工作?
    【解决方案2】:

    google+试错的结果

    EXEC dbo.sp_changedbowner @loginame = N'sa', @map = true
    GO
    sp_configure 'clr enabled', 1
    GO
    RECONFIGURE
    GO
    ALTER DATABASE [MyDB] SET TRUSTWORTHY ON
    GO
    CREATE ASSEMBLY [System.Core]
    AUTHORIZATION [dbo]
    FROM 
    'C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll'
    WITH PERMISSION_SET = UNSAFE
    GO
    

    网站

    【讨论】:

    • ALTER DATABASE [MyDB] SET TRUSTWORTHY ON这条线不用用,也可能会引起安全问题。
    【解决方案3】:

    This thread 可能对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多