难难!!!sql server 怎么向外部程序发送消息??

chose2000 2002-05-27 10:44:36
谢谢!
...全文
104 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dreamyyuan 2002-05-28
  • 打赏
  • 举报
回复
學習
chose2000 2002-05-28
  • 打赏
  • 举报
回复
怎么调用SOCKET发送消息?
N_chow 2002-05-27
  • 打赏
  • 举报
回复
1、RAISERRO
2、利用SQLMail發mail
3、自己寫發短消息的組件,在SQL中用sp_OAMethod等調用。
OpenVMS 2002-05-27
  • 打赏
  • 举报
回复
在SQL里自定义消息,用RAISERROR向外发送,外部程序来捕获
N_chow 2002-05-27
  • 打赏
  • 举报
回复
sp_OAMethod具体怎么操作啊?
答:

帖一個我曾經在CSDN上回答网友的例子:

DECLARE @object int
DECLARE @hr int
DECLARE @src varchar(255), @desc varchar(255)
Declare @tmp int
declare @msg varchar(3000)

SET @msg='Hello. MS SQL Server 2000. I Love you!!!' --這字串將會被寫到SQL Server的安裝目錄下的Nipsan.Txt文件里面

/* 取得SQL Server的安裝路徑*/
declare @strPath nvarchar(512)
Exec sp_MSGet_Setup_paths @strPath OUTPUT
Set @strPath=@strPath+'\Nipsan.Txt' --組成文件名
--創建Scripting組件實例
EXEC @hr = sp_OACreate 'Scripting.FileSystemObject', @object OUT
IF @hr <> 0
BEGIN
EXEC sp_OAGetErrorInfo @object, @src OUT, @desc OUT
SELECT hr=convert(varbinary(4),@hr), Source=@src, Description=@desc
RETURN
END

--創建文件
EXEC @hr = sp_OAMethod @object, 'CreateTextFile', @tmp OUTPUT , @strPath
IF @hr <> 0
BEGIN
EXEC sp_OAGetErrorInfo @object
RETURN
END
--把@msg寫到文件里面去
EXEC @hr = sp_OAMethod @tmp, 'Write',NULL, @msg
IF @hr <> 0
BEGIN
EXEC sp_OAGetErrorInfo @object
RETURN
END
--關閉文件
EXEC @hr = sp_OAMethod @tmp, 'Close',NULL
IF @hr <> 0
BEGIN
EXEC sp_OAGetErrorInfo @object
RETURN
END
-----------寫文件操作Demo完成---------------------------------------------------------------

--打開文件
EXEC @hr = sp_OAMethod @object, 'OpenTextFile', @tmp OUTPUT ,@strPath
IF @hr <> 0
BEGIN
EXEC sp_OAGetErrorInfo @object
RETURN
END

SET @msg=''
--讀文件
EXEC @hr = sp_OAMethod @tmp, 'Read', @msg OUT,3000
IF @hr <> 0
BEGIN
EXEC sp_OAGetErrorInfo @object
RETURN
END
-----讀文件操作Demo完成
SELECT @msg AS RESULT

programbcb 2002-05-27
  • 打赏
  • 举报
回复
sp_OAMethod具体怎么操作啊?

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧