?在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 ? ?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
