在SQL中调用动态链接库中的函数

 在SQL中调用动态链接库中的函数  
  代码示例:  
  ALTER   PROCEDURE   dbo.StoredProcedure2  
  /*  
  (  
  @parameter1   datatype   =   default   value,  
  @parameter2   datatype   OUTPUT  
  )  
  */  
  AS  
  /*   SET   NOCOUNT   ON   */  
  declare   @ErrorCode   int                     --//错误码  
  declare   @object         int                       --//令牌  
  declare   @Source     varchar   (255)         --   //返回错误信息  
  declare   @Dest         varchar   (255)  
  declare   @dk_str   varchar(255)                       --传入的参数  
  select   @ErrorCode   =@@Error  
  if   @ErrorCode   =   0  
        exec   @ErrorCode   =   sp_OACreate   'DK_DLL.Hourse'/*dll名称和类名称*/,@Object   Output  
  if   @ErrorCode   =0  
  select   @dk_str   ='d://test.txt'                     --为参数赋值  
  exec   @ErrorCode=sp_OAMethod   @Object   ,'OutFile'/*方法名称*/   ,NULL,@dk_str/*@ourValue   Output*/  
                                                                                                            --(这里一定要有@符号,文档有错误)  
    if   @ErrorCode<>0  
        exec   sp_OAGetErrorInfo   @Object   ,@Source   output,@Dest   output  
        set   @Dest   ='Error   ('+Convert   (varchar   ,@ErrorCode)  
                                                +','+@Source   +   '):'+@Dest  
                                                Raiserror   (@Dest,16,1)  
  exec   sp_OADestroy   @Object  
  /*sp_OAMethod   的用法:   ObjPointer   int   IN,   MethodName   varchar   IN   [,   @returnval   <any>   OUT   [,   additional   IN,   OUT,   or   BOTH   params]]  
     
  */  
  RETURN    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值