Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Instância Gerenciada de SQL do Azure
Nesta lição, você aprenderá a remover os objetos que habilitaram um banco de dados para dar suporte a uma conversa usando um procedimento armazenado de ativação interna.
Procedimentos
Observação
Os exemplos de código neste artigo foram testados usando o banco de dados de exemplo AdventureWorks2022
, que você pode baixar da página inicial Microsoft SQL Server Samples and Community Projects.
Alternar para o banco de dados AdventureWorks
Copie e cole o código a seguir em uma janela do Editor de Consultas. Em seguida, execute-o para alternar o contexto para o banco de dados AdventureWorks2022
.
USE AdventureWorks2022;
GO
Remover os objetos da conversa
Copie e cole o código a seguir em uma janela do Editor de Consultas. Depois, execute-o para descartar os objetos usados para oferecer suporte à conversa.
IF EXISTS (SELECT *
FROM sys.objects
WHERE name = N'TargetActiveProc')
DROP PROCEDURE TargetActiveProc;
IF EXISTS (SELECT *
FROM sys.services
WHERE name = N'//AWDB/InternalAct/TargetService')
DROP SERVICE [//AWDB/InternalAct/TargetService];
IF EXISTS (SELECT *
FROM sys.service_queues
WHERE name = N'TargetQueueIntAct')
DROP QUEUE TargetQueueIntAct;
-- Drop the initiator queue and service if they already exist.
IF EXISTS (SELECT *
FROM sys.services
WHERE name = N'//AWDB/InternalAct/InitiatorService')
DROP SERVICE [//AWDB/InternalAct/InitiatorService];
IF EXISTS (SELECT *
FROM sys.service_queues
WHERE name = N'InitiatorQueueIntAct')
DROP QUEUE InitiatorQueueIntAct;
-- Drop contract and message type if they already exist.
IF EXISTS (SELECT *
FROM sys.service_contracts
WHERE name = N'//AWDB/InternalAct/SampleContract')
DROP CONTRACT [//AWDB/InternalAct/SampleContract];
IF EXISTS (SELECT *
FROM sys.service_message_types
WHERE name = N'//AWDB/InternalAct/RequestMessage')
DROP MESSAGE TYPE [//AWDB/InternalAct/RequestMessage];
IF EXISTS (SELECT *
FROM sys.service_message_types
WHERE name = N'//AWDB/InternalAct/ReplyMessage')
DROP MESSAGE TYPE [//AWDB/InternalAct/ReplyMessage];
Próxima etapa
Esta lição conclui o tutorial. Os tutoriais são apenas breves introduções. Eles não descrevem todas as opções disponíveis. Os tutoriais usam lógica simplificada e tratamento de erros e não devem ser usados em um ambiente de produção. Para criar conversas eficazes, confiáveis e robustas, é necessário um código mais complexo do que o exemplo deste tutorial.