SQL2000 备份的数据库文件恢复到sql2005中,创建broker ,结果发送消息后,队列中发现没有消息。
SQL2000 备份的数据库文件恢复到sql2005中,创建broker ,结果发送消息后,队列中发现没有消息。
发送消息前,我已经修改数据库的运行兼容级别为sql2005 模式。
希望专家告诉原因。
这是我的脚本
USE master
ALTER DATABASE test SET ENABLE_BROKER
go
-------------------------------------------------------------------------------
-- 1 生成队列
create queue dbo.statQueue
go
--------------------------------------------------------------------------------
--5 创建消息 和服务端口
CREATE MESSAGE TYPE MSGT_counter_trigger
VALIDATION = WELL_FORMED_XML
GO
-- 创建约定,只需要发送消息
CREATE CONTRACT CNT_counter_trigger(
MSGT_counter_trigger SENT BY INITIATOR)
GO
--- 创建服务端口
CREATE SERVICE SRV_counter_trigger
ON QUEUE dbo.statQueue(
CNT_counter_trigger)
GO
--------------------------------------------------------------------
-- 6 添加 发送消息代理存储过程
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
create PROCEDURE [dbo].[async_SendCountMsg]
@message [nvarchar](max)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @handle uniqueidentifier
begin tran
BEGIN DIALOG CONVERSATION @handle
FROM SERVICE [SRV_counter_trigger]
TO SERVICE N'SRV_counter_trigger'
ON CONTRACT CNT_counter_trigger
WITH
ENCRYPTION = OFF;
SEND
ON CONVERSATION @handle
MESSAGE TYPE MSGT_counter_trigger(@message);
-- 消息发出即可, 不需要回复, 因此发出后即可结束会话
END CONVERSATION @handle
commit tran
END
发送消息前,我已经修改数据库的运行兼容级别为sql2005 模式。
希望专家告诉原因。
这是我的脚本
USE master
ALTER DATABASE test SET ENABLE_BROKER
go
-------------------------------------------------------------------------------
-- 1 生成队列
create queue dbo.statQueue
go
--------------------------------------------------------------------------------
--5 创建消息 和服务端口
CREATE MESSAGE TYPE MSGT_counter_trigger
VALIDATION = WELL_FORMED_XML
GO
-- 创建约定,只需要发送消息
CREATE CONTRACT CNT_counter_trigger(
MSGT_counter_trigger SENT BY INITIATOR)
GO
--- 创建服务端口
CREATE SERVICE SRV_counter_trigger
ON QUEUE dbo.statQueue(
CNT_counter_trigger)
GO
--------------------------------------------------------------------
-- 6 添加 发送消息代理存储过程
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
create PROCEDURE [dbo].[async_SendCountMsg]
@message [nvarchar](max)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @handle uniqueidentifier
begin tran
BEGIN DIALOG CONVERSATION @handle
FROM SERVICE [SRV_counter_trigger]
TO SERVICE N'SRV_counter_trigger'
ON CONTRACT CNT_counter_trigger
WITH
ENCRYPTION = OFF;
SEND
ON CONVERSATION @handle
MESSAGE TYPE MSGT_counter_trigger(@message);
-- 消息发出即可, 不需要回复, 因此发出后即可结束会话
END CONVERSATION @handle
commit tran
END
...全文
相关推荐
SQL Server 2005系统概述.docx
SQL server 2005的系统版本、组成、组件的分类、SQL Server 实例、系统数据库、存储结构
SQL Server 2005技术内幕英文版CHM文件2
Inside.Microsoft.SQL.Server.2005系列,4个文件一共20M,由于只能上传小于15M文件,所以无奈只好分2个文件上传,并不为了刷分,敬请原谅
发挥SQL Server 2005的新功能——两个新特性带来许多好处,但需要较大改动.pdf
发挥SQL Server 2005的新功能——两个新特性带来许多好处,但需要较大改动.pdf
SQL Server宝典
建库建表,实现增删改查,存储过程,视图,索引,高级语句,约束、、
T-SQLProgramming
用T-SQL编程,主要是编写存储过程的手册


疑难问题
