惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 澜心

面向对象语言的new操作 - 澜心 javascript复习一 JavaScript的面向对象 C#在word中插入上标的问题 新建SSIS项目失败或者在SSIS项目中新建包失败 简单数据库操作 C#泛型学习 空气污染指数的计算公式是什么?(API) 行列转换 - 澜心 - 博客园 数据中心和数据仓库,在信息化建设中有何作用? - 澜心 【求助】Vs2005当前不能命中断点 自动加载用户控件问题【找到部分原因】 【讨论】程序员的发展道路如何规划,欢迎大家加入讨论 sql常用函数汇总 网站配色方案学习 用例指南 - 澜心 用例 UseCase 系统分析员基本功 网站安装步骤 sqlserver2000下载地址 SQLServer2000安装图解
往消息队列传数据的存储过程
澜心 · 2008-01-07 · via 博客园 - 澜心

往消息队列传数据的存储过程

2008-01-07 18:40  澜心  阅读(654)  评论()    收藏  举报

 ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[SendMSMQMessage]
 @FormatName nvarchar(255),  --队列FormatName
 @Label nvarchar(250) --消息标签
AS
BEGIN
 SET NOCOUNT ON;

 DECLARE @MSMQInfo int,@MSMQ int, @Message int;
 DECLARE @HR int;
 DECLARE @Property nvarchar(255);
 DECLARE @Return nvarchar(255);
 DECLARE @Source nvarchar(255), @Desc nvarchar(255);

 -- 创建MSMQ对象
 EXEC @HR = sp_OACreate N'MSMQ.MSMQQueueInfo',
  @MSMQInfo OUT;
 IF @HR <> 0
  GOTO CLEANUP
 ELSE
 -- 创建成功
 BEGIN
  -- 设置FormatName属性.
  EXEC @HR = sp_OASetProperty @MSMQInfo,
   N'FormatName',@FormatName;
  IF @HR <> 0 GOTO CLEANUP

  -- 调Open方法打开队列(写入)
  EXEC @HR = sp_OAMethod @MSMQInfo,
   N'Open',@MSMQ OUT,2,0;
  IF @HR <> 0 GOTO CLEANUP

  -- 创建MSMQMessage对象
  EXEC @HR = sp_OACreate N'MSMQ.MSMQMessage',
   @Message OUT;
  IF @HR <> 0 GOTO CLEANUP

  -- 设置Message的Label属性
  EXEC @HR = sp_OASetProperty @Message,
   N'Label',@Label;
  IF @HR <> 0 GOTO CLEANUP

  -- 设置Message的Body属性
  --EXEC @HR = sp_OASetProperty @Message,
  -- N'Body',@Body;
  --IF @HR <> 0 GOTO CLEANUP

  -- 发送消息
  EXEC @HR = sp_OAMethod @Message,
   N'Send',NULL,@MSMQ;
  IF @HR <> 0 GOTO CLEANUP
 END

CLEANUP:
 IF @HR <> 0
 BEGIN
  -- 报告错误信息.
  EXEC sp_OAGetErrorInfo Null,
   @Source OUT,
   @Desc OUT;
  RAISERROR (@Desc,10,1);
 END

END_ROUTINE:
 IF @MSMQ IS NOT NULL
 BEGIN
  -- 关闭队列
  EXEC @HR = sp_OAMethod @MSMQ,
   N'Close';
  IF @HR <> 0
  BEGIN
   SET @MSMQ=NULL;
   GOTO CLEANUP;
  END
 END
 -- 销毁对象. 
 if @Message IS NOT NULL
  EXEC @HR = sp_OADestroy @Message;
 if @MSMQInfo IS NOT NULL
  EXEC @HR = sp_OADestroy @MSMQInfo;
 RETURN;
END


Exec dbo.SendMSMQMessage 'DIRECT=OS:192.168.10.125\private$\MQToData',@label


Exec dbo.SendMSMQMessage 'DIRECT=OS:192.168.10.125\private$\MQToData',@label