Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Service Broker. Добавить тип сообщения к существующему контракту  [new]
Referee
Member

Откуда:
Сообщений: 151
добрый день

создаю тип сообщения и контракт

create message type [//Test/CommonMessage] validation = well_formed_xml 
create contract [//Test/CommonContract] ([//Test/CommonMessage] sent by any)

далее создаю новый тип сообщения и хочу его добавить к контракту [//Test/CommonContract]

create message type [//Test/OtherMessage] validation = well_formed_xml
как его добавть к [//Test/CommonContract] ?

alter contract не нашел...

Спасибо.
24 авг 10, 13:07    [9314497]     Ответить | Цитировать Сообщить модератору
 Re: Service Broker. Добавить тип сообщения к существующему контракту  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

BOL - CREATE CONTRACT

The message types and directions in a contract cannot be changed.

Posted via ActualForum NNTP Server 1.4

24 авг 10, 13:21    [9314619]     Ответить | Цитировать Сообщить модератору
 Re: Service Broker. Добавить тип сообщения к существующему контракту  [new]
mike909
Member

Откуда:
Сообщений: 662
Referee
добрый день

создаю тип сообщения и контракт

create message type [//Test/CommonMessage] validation = well_formed_xml 
create contract [//Test/CommonContract] ([//Test/CommonMessage] sent by any)

далее создаю новый тип сообщения и хочу его добавить к контракту [//Test/CommonContract]

create message type [//Test/OtherMessage] validation = well_formed_xml
как его добавть к [//Test/CommonContract] ?

alter contract не нашел...
Спасибо.

Способ 1_й:
1) Удаляем службу
2) Удаляем контракт
3) создаем в обратной последовательности
Способ 2_й:
1) Создем новый контракт
2) Добавляем его в службу
3) Удаляем старый контракт из службы. (по вкусу ...)
24 авг 10, 13:22    [9314636]     Ответить | Цитировать Сообщить модератору
 Re: Service Broker. Добавить тип сообщения к существующему контракту  [new]
Referee
Member

Откуда:
Сообщений: 151
спасибо за ответы.
хм..
я верно понимаю - чтобы у меня через один контракт работало несколько типов сообщений мне надо контракт сразу с этими несколькими типами сообщений и создавать.

созданный контракт изменению не подлежит?

а почему так? мне любопытно...
24 авг 10, 13:29    [9314714]     Ответить | Цитировать Сообщить модератору
 Re: Service Broker. Добавить тип сообщения к существующему контракту  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

тут проголосовать можно за добавление фичи:
http://connect.microsoft.com/SQLServer/feedback/details/379453/add-alter-contract-command-to-change-ssb-contract-defination

Posted via ActualForum NNTP Server 1.4

24 авг 10, 13:35    [9314798]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Service Broker. Добавить тип сообщения к существующему контракту  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
daw
тут проголосовать можно за добавление фичи:
//http://connect.microsoft.com/SQLServer/feedback/details/379453/add-alter-contract-command-to-change-ssb-contract-defination


п-ц...
5 лет Microsoft колбасится, а вещь нужная в хозяйстве.
Можно, конечно, добавить новый удалить старый, но фигня может случиться, если есть необработанные записи в очереди.
Будут потеряны данные.

Как бороться с этим?
22 окт 13, 18:54    [15016861]     Ответить | Цитировать Сообщить модератору
 Re: Service Broker. Добавить тип сообщения к существующему контракту  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Winnipuh
п-ц...
5 лет Microsoft колбасится, а вещь нужная в хозяйстве.
Можно, конечно, добавить новый удалить старый, но фигня может случиться, если есть необработанные записи в очереди.
Будут потеряны данные.

Как бороться с этим?
Я конечно не против, но имхо менять контракт - это как менять API. Моветон.

К примеру некоторые отображают логические сущности на сообщения. Хотя разница в них почти никакой.
Когда нужно было добавить параметр Type в стандартное сообщение.

А вот когда реально меняется API - сообщение прыгает по разным сервисам - то тут палюбэ приходится перемешивать службы и контракты.

ИМХО
23 окт 13, 17:21    [15022279]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить