Como transferir os inícios de sessão e palavras-passe entre instâncias do SQL Server

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 246133
Sumário
Depois de mover as bases de dados para um novo servidor, os utilizadores poderão não conseguir iniciar sessão no novo servidor. Em vez disso, recebem a seguinte mensagem de erro:
Erro 18456, nível 16, indicar 1
Início de sessão falhou para o utilizador '%ls'.
Tem de transferir os inícios de sessão e palavras-passe para o novo servidor. Este artigo descreve como transferir os inícios de sessão e palavras-passe para um novo servidor.

Como transferir os inícios de sessão e palavras-passe entre servidores com o SQL Server 7.0

A funcionalidade de transferência de objecto do SQL Server 7.0 dados Transformation Services (DTS) transfere inícios de sessão e de utilizadores entre dois servidores, mas não transfere as palavras-passe para inícios de sessão do SQL Server autenticado. Para transferir os inícios de sessão e palavras-passe de um servidor que esteja a executar o SQL Server 7.0 para outro servidor que esteja a executar o SQL Server 7.0, siga os passos na secção "Resolução concluída a transferência inícios de sessão e palavras-passe entre diferentes versões do SQL Server".

Como transferir os inícios de sessão e palavras-passe de SQL Server 7.0, SQL Server 2000 ou entre servidores com o SQL Server 2000

Para transferir os inícios de sessão e palavras-passe de um servidor de SQL Server 7.0 para uma instância do SQL Server 2000, ou entre duas instâncias do SQL Server 2000, pode utilizar a nova tarefa de inícios de sessão de transferência do pacote DTS no SQL Server 2000. Para tal, siga estes passos:
  1. Ligar ao servidor de destino do SQL Server 2000, mover para os serviços de transformação de dados no SQL Server Enterprise Manager, pasta de expandthe, com o botão direito Pacotes Locale, em seguida, clique em Novo pacote.
  2. Depois dos DTS compactar designer abre, clique em Transferir tarefa de inícios de sessão no menu de tarefas . Preencha as informações sobre os separadores de origem, destino e inícios de sessão , conforme adequado.

    Importante O servidor de destino do SQL Server 2000 não pode estar em execução a versão de 64 bits do SQL Server 2000. Componentes DTS para a versão de 64 bits do SQL Server 2000 não estão disponíveis. Se estiver a importar inícios de sessão de um instanceof do SQL Server que se encontra num computador diferente, sua instância do SQL Server willmust ser executado numa conta de domínio para concluir a tarefa.

    Nota O método DTS transferirá as palavras-passe mas não theoriginal SID. Se um início de sessão não é criado utilizando o SID original e userdatabases forem também transferidas para um novo servidor, os utilizadores da base de dados serão beorphaned partir o início de sessão. Para transferir o SID original e ignorar a orphanedusers, siga os passos na secção "Resolução concluída a transferência inícios de sessão e palavras-passe entre diferentes versões do SQL Server".

Como transferir os inícios de sessão e palavras-passe entre instâncias do SQL Server 2005

Para mais informações sobre como transferir os inícios de sessão e palavras-passe entre instâncias do SQL Server 2005, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
918992 Como transferir os inícios de sessão e as palavras-passe entre instâncias do SQL Server 2005

Uma solução completa para transferir os inícios de sessão e palavras-passe entre diferentes versões do SQL Server

Para tal, utilize um dos seguintes métodos.
Notas
  • Os scripts dos métodos seguintes criar dois procedimentos armazenados que têm o nome do procedimento armazenado sp_hexadecimal e o procedimento de sp_help_revlogin armazenados na base de dados principal .
  • Os scripts estão dependentes de tabelas de sistema do SQL Server.Pode alterar a estrutura destas tabelas entre versões do SQL Server. Não é aconselhada a seleccionar directamente a partir de tabelas de sistema.
  • Rever os comentários no fim deste artigo para obter informações importantes sobre os passos nos métodos.
  • Método 2 atribui inícios de sessão a funções.

Método 1

Este método aplica-se aos seguintes cenários:
  • Transferir inícios de sessão e palavras-passe de SQL Server 7.0 para o SQL Server 7.0.
  • Transferir inícios de sessão e palavras-passe de SQL Server 7.0 para o SQL Server 2000.
  • Transferir inícios de sessão e palavras-passe entre servidores com o SQL Server 2000.
Para transferir os inícios de sessão e palavras-passe entre diferentes versões do SQL Server, siga estes passos:
  1. Execute o seguinte script na origem do SQL Server. Continue para o passo 2 quando terminar de criar o procedimento armazenadosp_help_revlogin .
    ----- Begin Script, Create sp_help_revlogin procedure -----USE masterGOIF OBJECT_ID ('sp_hexadecimal') IS NOT NULL  DROP PROCEDURE sp_hexadecimalGOCREATE PROCEDURE sp_hexadecimal    @binvalue varbinary(256),    @hexvalue varchar(256) OUTPUTASDECLARE @charvalue varchar(256)DECLARE @i intDECLARE @length intDECLARE @hexstring char(16)SELECT @charvalue = '0x'SELECT @i = 1SELECT @length = DATALENGTH (@binvalue)SELECT @hexstring = '0123456789ABCDEF' WHILE (@i <= @length) BEGIN  DECLARE @tempint int  DECLARE @firstint int  DECLARE @secondint int  SELECT @tempint = CONVERT(int, SUBSTRING(@binvalue,@i,1))  SELECT @firstint = FLOOR(@tempint/16)  SELECT @secondint = @tempint - (@firstint*16)  SELECT @charvalue = @charvalue +    SUBSTRING(@hexstring, @firstint+1, 1) +    SUBSTRING(@hexstring, @secondint+1, 1)  SELECT @i = @i + 1ENDSELECT @hexvalue = @charvalueGOIF OBJECT_ID ('sp_help_revlogin') IS NOT NULL  DROP PROCEDURE sp_help_revlogin GOCREATE PROCEDURE sp_help_revlogin @login_name sysname = NULL ASDECLARE @name    sysnameDECLARE @xstatus intDECLARE @binpwd  varbinary (256)DECLARE @txtpwd  sysnameDECLARE @tmpstr  varchar (256)DECLARE @SID_varbinary varbinary(85)DECLARE @SID_string varchar(256)IF (@login_name IS NULL)  DECLARE login_curs CURSOR FOR     SELECT sid, name, xstatus, password FROM master..sysxlogins     WHERE srvid IS NULL AND name <> 'sa'ELSE  DECLARE login_curs CURSOR FOR     SELECT sid, name, xstatus, password FROM master..sysxlogins     WHERE srvid IS NULL AND name = @login_nameOPEN login_curs FETCH NEXT FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwdIF (@@fetch_status = -1)BEGIN  PRINT 'No login(s) found.'  CLOSE login_curs   DEALLOCATE login_curs   RETURN -1ENDSET @tmpstr = '/* sp_help_revlogin script ' PRINT @tmpstrSET @tmpstr = '** Generated '   + CONVERT (varchar, GETDATE()) + ' on ' + @@SERVERNAME + ' */'PRINT @tmpstrPRINT ''PRINT 'DECLARE @pwd sysname'WHILE (@@fetch_status <> -1)BEGIN  IF (@@fetch_status <> -2)  BEGIN    PRINT ''    SET @tmpstr = '-- Login: ' + @name    PRINT @tmpstr     IF (@xstatus & 4) = 4    BEGIN -- NT authenticated account/group      IF (@xstatus & 1) = 1      BEGIN -- NT login is denied access        SET @tmpstr = 'EXEC master..sp_denylogin ''' + @name + ''''        PRINT @tmpstr       END      ELSE BEGIN -- NT login has access        SET @tmpstr = 'EXEC master..sp_grantlogin ''' + @name + ''''        PRINT @tmpstr       END    END    ELSE BEGIN -- SQL Server authentication      IF (@binpwd IS NOT NULL)      BEGIN -- Non-null password        EXEC sp_hexadecimal @binpwd, @txtpwd OUT        IF (@xstatus & 2048) = 2048          SET @tmpstr = 'SET @pwd = CONVERT (varchar(256), ' + @txtpwd + ')'        ELSE          SET @tmpstr = 'SET @pwd = CONVERT (varbinary(256), ' + @txtpwd + ')'        PRINT @tmpstr	EXEC sp_hexadecimal @SID_varbinary,@SID_string OUT        SET @tmpstr = 'EXEC master..sp_addlogin ''' + @name           + ''', @pwd, @sid = ' + @SID_string + ', @encryptopt = '      END      ELSE BEGIN         -- Null password	EXEC sp_hexadecimal @SID_varbinary,@SID_string OUT        SET @tmpstr = 'EXEC master..sp_addlogin ''' + @name           + ''', NULL, @sid = ' + @SID_string + ', @encryptopt = '      END      IF (@xstatus & 2048) = 2048        -- login upgraded from 6.5        SET @tmpstr = @tmpstr + '''skip_encryption_old'''       ELSE         SET @tmpstr = @tmpstr + '''skip_encryption'''      PRINT @tmpstr     END  END  FETCH NEXT FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd  ENDCLOSE login_curs DEALLOCATE login_curs RETURN 0GO ----- End Script -----
  2. Depois de criar o procedimento armazenado sp_help_revlogin , execute o procedimento de sp_help_revlogin do analisador de consultas no servidor de origem. O procedimento armazenado sp_help_revlogin pode ser utilizado no SQL Server 7.0 e SQLServer 2000. O resultado do procedimento armazenado sp_help_revlogin é scripts de início de sessão que criar inícios de sessão com theoriginal SID e palavra-passe. Guardar a saída e, em seguida, colar e executá-la no QueryAnalyzer do destino do SQL Server. Por exemplo:
    EXEC master..sp_help_revlogin

Método 2

Este método aplica-se aos seguintes cenários:
  • Transferir inícios de sessão e palavras-passe de SQL Server 7.0 para o SQL Server 2005.
  • Transferir inícios de sessão e palavras-passe do SQL Server 2000 para o SQL Server 2005.
  • Inícios de sessão, atribuir a funções.
Para transferir os inícios de sessão e palavras-passe entre diferentes versões do SQL Server e, em seguida, atribuir inícios de sessão a funções, siga estes passos:
  1. Execute o seguinte script na origem do SQL Server.
    USE master GO IF OBJECT_ID ('sp_hexadecimal') IS NOT NULL DROP PROCEDURE sp_hexadecimal GO CREATE PROCEDURE sp_hexadecimal @binvalue varbinary(256), @hexvalue varchar(256) OUTPUT AS DECLARE @charvalue varchar(256) DECLARE @i int DECLARE @length int DECLARE @hexstring char(16) SELECT @charvalue = '0x' SELECT @i = 1 SELECT @length = DATALENGTH (@binvalue) SELECT @hexstring = '0123456789ABCDEF' WHILE (@i <= @length) BEGIN DECLARE @tempint int DECLARE @firstint int DECLARE @secondint int SELECT @tempint = CONVERT(int, SUBSTRING(@binvalue,@i,1)) SELECT @firstint = FLOOR(@tempint/16) SELECT @secondint = @tempint - (@firstint*16) SELECT @charvalue = @charvalue + SUBSTRING(@hexstring, @firstint+1, 1) + SUBSTRING(@hexstring, @secondint+1, 1) SELECT @i = @i + 1 END SELECT @hexvalue = @charvalue GO IF OBJECT_ID ('sp_help_revlogin_2000_to_2005') IS NOT NULL DROP PROCEDURE sp_help_revlogin_2000_to_2005 GO CREATE PROCEDURE sp_help_revlogin_2000_to_2005 @login_name sysname = NULL, @include_db bit = 0, @include_role bit = 0 AS DECLARE @name sysname DECLARE @xstatus int DECLARE @binpwd varbinary (256) DECLARE @dfltdb varchar (256) DECLARE @txtpwd sysname DECLARE @tmpstr varchar (256) DECLARE @SID_varbinary varbinary(85) DECLARE @SID_string varchar(256) IF (@login_name IS NULL) DECLARE login_curs CURSOR STATIC FOR SELECT sid, [name], xstatus, password, isnull(db_name(dbid), 'master') FROM master.dbo.sysxlogins WHERE srvid IS NULL AND [name] <> 'sa' ELSE DECLARE login_curs CURSOR FOR SELECT sid, [name], xstatus, password, isnull(db_name(dbid), 'master') FROM master.dbo.sysxlogins WHERE srvid IS NULL AND [name] = @login_name OPEN login_curs FETCH NEXT FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd, @dfltdb IF (@@fetch_status = -1) BEGIN PRINT 'No login(s) found.' CLOSE login_curs DEALLOCATE login_curs RETURN -1 END SET @tmpstr = '/* sp_help_revlogin script ' PRINT @tmpstr SET @tmpstr = '** Generated ' + CONVERT (varchar, GETDATE()) + ' on ' + @@SERVERNAME + ' */' PRINT @tmpstr PRINT '' PRINT '' PRINT '' PRINT '/***** CREATE LOGINS *****/' WHILE @@fetch_status = 0 BEGIN PRINT '' SET @tmpstr = '-- Login: ' + @name PRINT @tmpstr IF (@xstatus & 4) = 4 BEGIN -- NT authenticated account/group IF (@xstatus & 1) = 1 BEGIN -- NT login is denied access SET @tmpstr = '' --'EXEC master..sp_denylogin ''' + @name + '''' PRINT @tmpstr END ELSE BEGIN -- NT login has access SET @tmpstr = 'IF NOT EXISTS (SELECT * FROM sys.server_principals WHERE [name] = ''' + @name + ''')' PRINT @tmpstr SET @tmpstr = CHAR(9) + 'CREATE LOGIN [' + @name + '] FROM WINDOWS' PRINT @tmpstr END END ELSE BEGIN -- SQL Server authentication EXEC sp_hexadecimal @SID_varbinary, @SID_string OUT IF (@binpwd IS NOT NULL) BEGIN -- Non-null password EXEC sp_hexadecimal @binpwd, @txtpwd OUT SET @tmpstr = 'CREATE LOGIN [' + @name + '] WITH PASSWORD=' + @txtpwd + ' HASHED' END ELSE BEGIN -- Null password SET @tmpstr = 'CREATE LOGIN [' + @name + '] WITH PASSWORD=''''' END SET @tmpstr = @tmpstr + ', CHECK_POLICY=OFF, SID=' + @SID_string PRINT @tmpstr END FETCH NEXT FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd, @dfltdb END IF @include_db = 1 BEGIN PRINT '' PRINT '' PRINT '' PRINT '/***** SET DEFAULT DATABASES *****/' FETCH FIRST FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd, @dfltdb WHILE @@fetch_status = 0 BEGIN PRINT '' SET @tmpstr = '-- Login: ' + @name PRINT @tmpstr SET @tmpstr = 'ALTER LOGIN [' + @name + '] WITH DEFAULT_DATABASE=[' + @dfltdb + ']' PRINT @tmpstr FETCH NEXT FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd, @dfltdb END END IF @include_role = 1 BEGIN PRINT '' PRINT '' PRINT '' PRINT '/***** SET SERVER ROLES *****/' FETCH FIRST FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd, @dfltdb WHILE @@fetch_status = 0 BEGIN PRINT '' SET @tmpstr = '-- Login: ' + @name PRINT @tmpstr IF @xstatus &16 = 16 -- sysadmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''sysadmin''' PRINT @tmpstr END IF @xstatus &32 = 32 -- securityadmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''securityadmin''' PRINT @tmpstr END IF @xstatus &64 = 64 -- serveradmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''serveradmin''' PRINT @tmpstr END IF @xstatus &128 = 128 -- setupadmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''setupadmin''' PRINT @tmpstr END IF @xstatus &256 = 256 --processadmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''processadmin''' PRINT @tmpstr END IF @xstatus &512 = 512 -- diskadmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''diskadmin''' PRINT @tmpstr END IF @xstatus &1024 = 1024 -- dbcreator BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''dbcreator''' PRINT @tmpstr END IF @xstatus &4096 = 4096 -- bulkadmin BEGIN SET @tmpstr = 'exec master.dbo.sp_addsrvrolemember @loginame=''' + @name + ''', @rolename=''bulkadmin''' PRINT @tmpstr END FETCH NEXT FROM login_curs INTO @SID_varbinary, @name, @xstatus, @binpwd, @dfltdb END END CLOSE login_curs DEALLOCATE login_curs RETURN 0 GOexec sp_help_revlogin_2000_to_2005 @login_name=NULL, @include_db=1, @include_role=1GO
  2. Guardar a saída e, em seguida, colar e executar a saída no SQL Server Management Studio no destino de SQL Server 2005.
Nota Se a origem do SQL Server contiver um início de sessão com uma palavra-passe em branco, o resultado contém uma instrução que é semelhante ao seguinte.
CREATE LOGIN LoginName WITH PASSWORD = '', CHECK_POLICY = OFF, SID = MySID

Observações

  • Reveja cuidadosamente o script de saída, antes de executar no thedestination do SQL Server. Se tiver de transferir os inícios de sessão para uma instância do SQLServer num domínio diferente que a instância de origem do SQL Server, editar thescript gerado pelo procedimento de sp_help_revlogin e substitua o nome de domínio com o novo domínio nas demonstraçõessp_grantlogin . Dado que os inícios de sessão integrados concedidos acesso no novo domínio não terão os mesmos SID como os inícios de sessão no domínio original, os utilizadores de base serão ficar isolados destes inícios de sessão. Para resolver estes orphanedusers, consulte os artigos referenciados no item com marca seguinte. Se youtransfer integrado inícios de sessão entre instâncias de servidores SQL no mesmo domínio, os mesmos SID é utilizado e o utilizador não é susceptível de ficar isolado.
  • Depois de mover os inícios de sessão, os utilizadores não poderão ter bases de dados do access permissionsto que também tenham sido movidas. Este problema é descrito como um utilizador"órfão". Se tentar conceder o acesso de início de sessão na base de dados,-mayfail, indicando o utilizador já existe:
    Microsoft SQL-DMO (ODBC SQLState: 42000) erro 15023: utilizador ou função '%s' já existe na base de dados actual.
    Para obter instruções sobre como mapear os inícios de sessão aos utilizadores da base de dados resolver órfãos inícios de sessão do SQL Server e integrados de inícios de sessão, consulte o seguinte artigo na Microsoft Knowledge Base:
    240872 Como resolver problemas de permissões quando move uma base de dados entre servidores que executam o SQL Server
    Para obter instruções sobre como utilizar o sp_change_users_login de procedimento para corrigir os utilizadores órfãos um por um armazenado (thiswill apenas endereço utilizadores isolados de inícios de sessão padrão do SQL), consulte o followingarticle na Microsoft Knowledge Base:
    274188 "Utilizadores de Orphaned de resolução de problemas" tópico no Books Online está incompleto
  • Se a transferência de inícios de sessão e palavras-passe fizer parte de uma bases de dados de moveof para um novo servidor com o SQL Server, consulte o seguinte artigo na Microsoft Knowledge Base para obter uma descrição do fluxo de trabalho e stepsinvolved:
    314546 Como mover bases de dados entre computadores com o SQL Server
  • Pode fazê-lo devido o parâmetro @encryptopt no procedimento armazenado do sistema sp_addlogin , que permite um início de sessão ser criada a finalutilizando a palavra-passe encriptado. Para mais informações sobre este procedimento, seethe o tópico "sp_addlogin (T-SQL)" no SQL Server Books Online.
  • Por predefinição, apenas os membros do rolecan de servidor a sysadminfixed seleccionem na tabela sysxlogins . A menos que um membro da função sysadmin concede a necessarypermissions, os utilizadores finais não é possível criar ou executar estes procedimentos armazenados.
  • Esta abordagem não tenta transferir o databaseinformation de predefinido para um determinado login porque a base de dados predefinida poderá não alwaysexist no servidor de destino. Para definir a base de dados predefinida para um início de sessão, pode utilizar o procedimento armazenado do sistema sp_defaultdb por passagem a base de dados do nome e thedefault início de sessão como argumentos. Para mais informações sobre como utilizar este procedimento, consulte o tópico "sp_defaultdb" no SQL Server Books Online.
  • Durante a transferência de inícios de sessão entre instâncias do SQLServer, se a ordem pela qual o servidor de origem é maiúsculas e minúsculas e diferenciar maiúsculas de minúsculas, a Sequênciadeordenação do servidor de destino tem de introduzir caracteres de allalphabetical em palavras-passe como caracteres em maiúsculas depois da logins de transferof ao servidor de destino. Se a ordem pela qual os sensíveis de iscase do servidor de origem e a ordem pela qual o servidor de destino não diferenciam iscase, não será capaz de início de sessão com o transferredusing de inícios de sessão, o procedimento descrito neste artigo, a menos que o original passwordcontains caracteres não alfabéticos ou a menos que todos os caracteres alfabéticos a palavra-passe original são caracteres em maiúsculas. Se ambos os servidores arecase sensíveis, ou ambos os servidores forem maiúsculas e minúsculas, irá não experiencethis problema. Este é um efeito de lado da forma como que handlespasswords do SQL Server. Para mais informações, consulte o tópico "Efeito em palavras-passe de alteração SortOrders" no SQL Server 7.0 Books Online.
  • Quando executa a saída do sp_help_revlogin script no servidor de destino, se o servidor de destino já tiver uma definedwith de início de sessão como um dos inícios de sessão, o mesmo nome no resultado do script, poderá ver erro de thefollowing após a execução da saída do sp_help_revlogin script:
    Servidor: Erro 15025, de 16 de nível, o estado 1, sp_addlogin de procedimento, linha 56
    O início de sessão 'Teste1' já existe.
    Do mesmo modo, se um início de sessão diferente existir com o mesmo valor de SID neste servidor como o que está a tentar adicionar, receivethe seguinte mensagem de erro:
    Servidor: Msg15433, de 16 de nível de estado 1, sp_addlogin de procedimento, linha 93
    Suppliedparameter @sid está em utilização.
    Assim, tem de carefullyreview o resultado destes comandos, examinar o conteúdo da tabela de sysxlogins e endereço estes erros em conformidade.
  • O valor de SID para um início de sessão específico é utilizado como o basisfor a execução de acesso de nível de base de dados no SQL Server. Por conseguinte, se o samelogin tem dois valores diferentes para o SID ao nível da base de dados (em bases de dados twodifferent nesse servidor), o início de sessão só terá acesso a thatdatabase cujo SID corresponda ao valor syslogins para esse início de sessão. Esta situação poderá ocorrer se a questão de dois databasesin ter sido consolidada de dois servidores diferentes. Para resolver thisproblem, o início de sessão em questão teria de ser removida manualmente da base que tenha um erro de correspondência de SID, utilizando o procedimento armazenado sp_dropuser e, em seguida, adicionado novamente utilizando o procedimento armazenado sp_adduser .

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 246133 - Última Revisão: 08/20/2014 18:33:00 - Revisão: 10.0

Microsoft SQL Server 7.0 Standard Edition, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL 2005 Server Workgroup, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL 2005 Server Enterprise

  • kbsqlsetup kbhowtomaster kbinfo kbmt KB246133 KbMtpt
Comentários