Partilhar via


Definir a ordenação de bancos de dados definidos pelo usuário para corresponder aos dos bancos de dados mestre e modelo

Essa regra verifica se os bancos de dados personalizados pelo usuário são definidos usando uma ordenação de banco de dados igual à ordenação para os bancos de dados master ou model.

Recomendações de práticas recomendadas

Recomendamos que as ordenações de bancos de dados definidos pelo usuário correspondam à ordenação de mestre ou modelo. Caso contrário, podem ocorrer conflitos de ordenação que possam impedir a execução do código. Por exemplo, quando um procedimento armazenado une uma tabela a uma tabela temporária, o SQL Server pode encerrar o lote e retornar um erro de conflito de ordenação se as ordenações do banco de dados definido pelo usuário e do banco de dados modelo forem diferentes. Isso ocorre porque as tabelas temporárias são criadas no tempdb, que baseia sua ordenação na do modelo.

Se você tiver erros de conflito de ordenação, considere uma das seguintes soluções:

  • Exporte os dados do banco de dados do usuário e importe-os para novas tabelas que têm a mesma ordenação que os bancos de dados mestre e modelo.

  • Recompile os bancos de dados do sistema para usar uma ordenação que corresponda à ordenação do banco de dados do usuário. Para obter mais informações sobre como recriar os bancos de dados do sistema, consulte Recompilar bancos de dados do sistema.

  • Modifique todos os procedimentos armazenados que unam tabelas de usuário a tabelas no tempdb para criar as tabelas no tempdb usando a ordenação do banco de dados do usuário. Para fazer isso, adicione a COLLATE database_default cláusula às definições de coluna da tabela temporária, conforme mostrado no exemplo a seguir:

    CREATE TABLE #temp1 ( c1 int, c2 varchar(30) COLLATE database_default )  
    

Para obter mais informações

Definir ou alterar a ordenação de banco de dados

Definir ou alterar a ordenação de coluna

ALTER DATABASE (Transact-SQL)

COLLATE (Transact-SQL)

sys.databases (Transact-SQL)

Artigo da Base de Dados de Conhecimento da Microsoft 325335

Como instalar o SQL Server 2008 no Prompt de Comando

Consulte Também

Monitorar e impor práticas recomendadas usando o gerenciamento baseado em políticas