Como faço para determinar o agrupamento de um banco de dados em SQL 2005?
Pergunta
Como você determina o agrupamento de um banco de dados em SQL 2005, por exemplo, se você precisa para realizar uma pesquisa case-insensitive / substituir?
Solução 3
Use o seguinte SQL determina o agrupamento de um banco de dados:
SELECT DATABASEPROPERTYEX('{database name}', 'Collation') SQLCollation;
Outras dicas
Lembre-se, que as colunas individuais pode substituir o agrupamento de banco de dados:
SELECT TABLE_NAME, COLUMN_NAME, COLLATION_NAME
FROM INFORMATION_SCHEMA.COLUMNS
Selecione o banco de dados e execute o seguinte comando.
sp_helpsort
Se você quiser fazer uma pesquisa de maiúsculas e minúsculas e não pode contar com agrupamento do banco de dados, você pode sempre solicitá-lo especificamente para a consulta que você está interessado em Por exemplo:.
SELECT TOP 1 FName, *
FROM People
WHERE FName LIKE '%mich%' COLLATE Latin1_General_CI_AI
Eu geralmente têm o problema oposto, onde eu quero a sensibilidade caso, mas não tê-lo no agrupamento do banco de dados, então eu me encontrar com o Latin1_General_BIN agrupamento um pouco em minhas consultas. Se você ainda não sabe, você pode fazer:
SELECT
FROM ::fn_helpcollations()
Para obter uma lista dos agrupamentos disponíveis e descrições do que eles são para.