Aracılığıyla paylaş


HIZMET (Transact-SQL) CREATE

Yeni bir hizmet oluşturur.A Service Broker service is a name for a specific task or set of tasks.Service Broker uses the name of the service to route messages, deliver messages to the correct queue within a database, and enforce the contract for a conversation.

Topic link iconTransact-SQL sözdizimi kuralları

CREATE SERVICE service_name
   [ AUTHORIZATION owner_name ]
   ON QUEUE [ schema_name. ]queue_name
   [ ( contract_name | [DEFAULT][ ,...n ] ) ]
[ ; ]

Bağımsız değişkenler

  • service_name
    Oluşturmak için bu hizmet adıdır.Yeni BIR hizmet geçerli veritabanında oluşturulmuş ve yetkilendirme yan tümcesinde belirtilen anapara sahibi.Şema sunucu ve veritabanı adı belirtilemez.The service_name must be a valid sysname.

    Not

    Anahtar sözcüğü kullanan bir hizmet için ANY oluşturmayın service_name. Öncelik, ARACıSı ÖNCELIĞI CREATE ANY için bir hizmet adı belirttiğinizde, tüm hizmetler için kabul edilir.Bir hizmet adı ANY olan sınırlı değildir.

  • owner_name yetkilendirme
    hizmet sahibi belirtilen veritabanı kullanıcı veya rolün ayarlar.Geçerli kullanıcının olduğunda dbo or SA, owner_name herhangi bir geçerli kullanıcı veya rolün adını olabilir. Aksi halde, owner_name Geçerli kullanıcı adını, geçerli kullanıcı için özelliklerini AL iznine sahip bir kullanıcı adı veya ait olduğu geçerli kullanıcı rolünün adı olmalıdır.

  • ON QUEUE [ schema_name**.** ] queue_name
    hizmet iletileri alan sırasını belirtir.Sıra hizmet olarak aynı veritabanında bulunması gerekir.Yüklenmemişse schema_name deyim yürüten kullanıcının varsayılan şemayı şema ise, sağlanır.

  • contract_name
    Bu hizmet bir hedefi olabilir, bir anlaşma belirtir.Hizmet programı, belirtilen sözleşmeler kullanarak bu hizmete yapılan konuşmaları başlatırlar.hizmet, yalnızca hiçbir sözleşmeler belirtilirse, konuşmaları başlatabilir.

  • [DEFAULT]
    hizmet VARSAYıLAN anlaşma izleyen görüşmeleri için hedef olabileceğini belirtir.Bu yan tümce bağlamında, VARSAYıLAN bir anahtar sözcüktür ve tanımlayıcı olarak ayrılmış.VARSAYıLAN anlaşma, görüşme, ileti türünün VARSAYıLAN iletileri göndermek için her iki tarafında sağlar.VARSAYıLAN ileti türü, doğrulama NONE kullanır.

Remarks

Bir hizmet, böylece başka hizmetler tarafından kullanılabilecek, ilişkili olduğu sözleşmeler tarafından sağlanan işlevselliği sunar.HIZMET CREATE deyim, bu hizmet için hedef sözleşmeler belirtir.Bir hizmetin, hizmet tarafından belirtilen sözleşmeler kullanan görüşmeleri için hedef olarak yalnızca olabilir.Hiçbir sözleşmeler belirten BIR hizmet diğer hizmetler için hiçbir işlevselliği sunar.

Bu hizmetten başlatılan görüşmeleri, herhangi bir anlaşma kullanabilir.Bir hizmet, hizmet yalnızca konuşmaları başlattığında, sözleşmeler belirtmeden oluşturun.

Ne zaman Service Broker Yeni Görüşme kabul eden uzaktan hizmetinden, sıranın nerede Aracısı Konuşmada iletileri koyar hedef hizmet adını belirler.

İzinler

Bir hizmet oluşturma izni üyeleri için varsayılan olarak db_ddladmin or db_owner veritabanı rolleri ve sabitsysadmin sabit sunucu rolü.HIZMET CREATE deyim yürütme kullanıcı sıra ve belirtilen tüm sözleşmeler BAşVURULAR izni olması gerekir.

hizmet, üyeleri sahibine BAşVURULAR izninin bir hizmet varsayılan db_ddladmin or db_owner üyelerinin ve veritabanı rollerini sabit.sysadmin sabit sunucu rolü.Sahibine bir hizmet varsayılan izinleri hizmet üyesi SEND db_owner sabit veritabanı rolü ve üyeleri sysadmin sabit sunucu rolü.

Bir hizmet geçici bir nesne olabilir.Hizmet ile başlayan adları # izin verilir, ancak kalıcı nesneleridir.

Örnekler

C.Bir hizmet bir anlaşma ile oluşturma

Aşağıdaki örnek, hizmet oluşturur. //Adventure-Works.com/Expenses üzerinde ExpenseQueue içinde kuyruğa dbo Schema. Bu hizmet hedef iletişim kutuları, anlaşma gelmelidir //Adventure-Works.com/Expenses/ExpenseSubmission.

CREATE SERVICE [//Adventure-Works.com/Expenses]
    ON QUEUE [dbo].[ExpenseQueue]
    ([//Adventure-Works.com/Expenses/ExpenseSubmission]) ;

b.Bir hizmet olan Çoklu Sözleşmeler oluşturma

Aşağıdaki örnek, hizmet oluşturur. //Adventure-Works.com/Expenses üzerinde ExpenseQueue sıra. Bu hizmet hedef iletişimlerinin ya da anlaşma gelmelidir //Adventure-Works.com/Expenses/ExpenseSubmission veya, anlaşma //Adventure-Works.com/Expenses/ExpenseProcessing.

CREATE SERVICE [//Adventure-Works.com/Expenses] ON QUEUE ExpenseQueue
    ([//Adventure-Works.com/Expenses/ExpenseSubmission],
     [//Adventure-Works.com/Expenses/ExpenseProcessing]) ;

c.Bir hizmet olan hiçbir sözleşmeler oluşturma

Aşağıdaki örnek, hizmet oluşturur. //Adventure-Works.com/Expenses on the ExpenseQueue sıra. Bu hizmet anlaşma bilgi vardır.Bu nedenle, hizmet yalnızca bir iletişim başlatan olabilir.

CREATE SERVICE [//Adventure-Works.com/Expenses] ON QUEUE ExpenseQueue ;