CORRECÇÃO: Não É possível criar diagramas no SQL Enterprise Manager se você não for um proprietário de banco de dados

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 327145
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Bug #: 236377 (SQL Server 8.0)
Sintomas
No SQL Server Enterprise Manager, se você não pertencer à função de banco de dados db_owner , não é possível exibir diagramas existentes ou criar novos diagramas. Quando você tenta criar um novo diagrama, você receber a seguinte mensagem de erro:
"Você não tem privilégios suficientes para criar o novo diagrama."
Depois de aplicar a função de banco de dados db_owner , você pode exibir diagramas existentes e criar novos diagramas.
Causa
Quando você cria um novo banco de dados no SQL Server 2000 Enterprise Manager, SQL Server não cria qualquer armazenados procedimentos ou a tabela dtproperties . SQL Server inicializa a tabela dtproperties a primeira vez que você tenta criar uma tabela ou o diagrama para o novo banco de dados. SQL Server inicializa os procedimentos armazenados a primeira vez que você tenta criar um diagrama para o novo banco de dados.

Se você deseja exibir diagramas existentes ou criar novos diagramas como um usuário que é não um dbo , por padrão, todos os procedimentos armazenados como dt_adduserobject , dt_getpropertiesbyid ou dt_setpropertybyid devem ter a permissão de EXEC para a função de banco de dados público habilitada. Além disso, as permissões para a tabela dtproperties devem ser definidas como SELECT, INSERT, UPDATE, DELETE e DRI. No entanto, como essas permissões não estão definidas no SQL Server 2000, qualquer tentativa para exibir ou criar um novo diagrama falhará.
Resolução
Para resolver esse problema, obtenha o service pack mais recente para o SQL Server 2000. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211Como obter o SQL Server 2000 service pack mais recente
Como Contornar
Para contornar esse comportamento, crie as permissões manualmente.

Por exemplo:
  1. No SQL Enterprise Manager, mova para o banco de dados afetado.
  2. Conceda permissões SELECT, INSERT, UPDATE, DELETE e DRI para a função de banco de dados público da tabela dtproperties .
  3. Conceder permissões de EXEC para a função de banco de dados público para todos esses procedimentos armazenados:
    dt_addtosourcecontrol
    dt_addtosourcecontrol_u
    dt_adduserobject
    dt_adduserobject_vcs
    dt_checkinobject
    dt_checkinobject_u
    dt_checkoutobject
    dt_checkoutobject_u
    dt_displayoaerror
    dt_displayoaerror_u
    dt_droppropertiesbyid
    dt_dropuserobjectbyid
    dt_generateansiname
    dt_getobjwithprop
    dt_getobjwithprop_u
    dt_getpropertiesbyid
    dt_getpropertiesbyid_u
    dt_getpropertiesbyid_vcs
    dt_getpropertiesbyid_vcs_u
    dt_isundersourcecontrol
    dt_isundersourcecontrol_u
    dt_removefromsourcecontrol
    dt_setpropertybyid
    dt_setpropertybyid_u
    dt_validateloginparams
    dt_validateloginparams_u
    dt_vcsenabled
    dt_verstamp006
    dt_whocheckedout
    dt_whocheckedout_u
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Esse problema foi corrigido primeiro no SQL Server 2000 Service Pack 1.

Observação : SQL Server 2000 Service Pack 1 ou posterior, não altera as configurações de permissão para bancos de dados que foram criados no SQL Server 2000 (RTM). Por esse motivo, o problema ainda ocorre nesses bancos de dados. Para contornar esse problema e evitar o problema, use qualquer um dos métodos apresentados na seção "Solução".
segurança

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 327145 - Última Revisão: 12/07/2015 12:06:55 - Revisão: 3.2

Microsoft SQL Server 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbbug kbpending kbsqlserv2000sp1fix KB327145 KbMtpt
Comentários