zoukankan      html  css  js  c++  java
  • sql server存储过程调用C#编写的DLL文件

    新建C#类库,编译。

    引用

    using Microsoft.SqlServer.Server;

    方法

    [SqlFunction]
    public static int GenerateTxt()
    {
    ......
    }

    修改数据库配置

    ---修改配置
    exec sp_configure 'clr enabled', 1;
    reconfigure;

    根据dll路径注册程序集

    --从dll中抽取中间语言(IL)
    USE erp303_szzb_szpa
    CREATE ASSEMBLY CustomerInfoInterface FROM 'E:StudyVS2010PingAnCustomerInfoInterfacePingAnCustomerInfoInterfaceinDebugPingAnCustomerInfoInterface.dll'

    IF EXISTS ( SELECT *
    FROM sysobjects
    WHERE id = OBJECT_ID('OnTimeWork') )
    BEGIN
    DROP PROCEDURE OnTimeWork
    END
    GO
    CREATE PROCEDURE OnTimeWork
    AS EXTERNAL NAME
    [PingAnCustomerInfoInterface].[PingAnCustomerInfoInterface.GetCustomerInfo].[GenerateTxt]
    GO

    注意函数调用方法:[AssemblyName].[AssemblyName.ClassName].[FunctionName]

    常见问题:

    1.注册程序集是需要将dll拷贝到对应的服务器。

    2.SQLSERVER2008R2支持的.net版本是3.5,与c#程序的.net版本不匹配

    3.参数不匹配

  • 相关阅读:
    web工程导入新环境的注意事项
    Mysql group by,order by,dinstict优化
    Dijkstra and Floyd算法
    百度面试题
    腾讯面试题
    百度笔试3
    百度笔试2
    百度笔试1
    百度2011实习生招聘笔试题
    百度2011.10.16校园招聘会笔试题
  • 原文地址:https://www.cnblogs.com/KingUp/p/5729312.html
Copyright © 2011-2022 走看看