È necessario modificare le regole di confronto del server impostando la distinzione tra maiuscole e minuscole per ottenere il comportamento desiderato. Non basta semplicemente cambiare le regole di confronto per il db.
Le regole di confronto predefinite di un'installazione di SQL Server, SQL_Latin1_General_CP1_CI_AS
non fa distinzione tra maiuscole e minuscole.
Sembra che tu voglia modificare le regole di confronto del tuo server a uno che non fa distinzione tra maiuscole e minuscole. Scegline uno con _CS
. Il _CI
significa "senza distinzione tra maiuscole e minuscole ", e la distinzione tra maiuscole e minuscole è _CS
. Forse vorrai Latin1_General_CS_AS
.
Questa è un'ottima risposta a una domanda precedente sulla modifica delle regole di confronto di SQL Server in maiuscole e minuscole da maiuscole e minuscole?.
Dalla documentazione in linea di SQL Server:
COLLATE (Transact-SQL)
Le regole di confronto di un identificatore dipendono dal livello a cui è definito.
- Agli identificatori di oggetti a livello di istanza, come accessi e nomi di database, vengono assegnate le regole di confronto predefinite dell'istanza.
-
Agli identificatori di oggetti all'interno di un database, come tabelle, viste e nomi di colonne, vengono assegnate le regole di confronto predefinite del database.
Ad esempio, due tabelle con nomi diversi solo in caso di maiuscole e minuscole possono essere create in un database con regole di confronto con distinzione tra maiuscole e minuscole, ma non possono essere create in un database con regole di confronto senza distinzione tra maiuscole e minuscole. Per ulteriori informazioni, consulta Identificatori di database.
-
Gli identificatori per le variabili , Etichette GOTO , procedure archiviate temporanee e tabelle temporanee sono nelle regole di confronto predefinite dell'istanza del server.
È possibile creare variabili, etichette GOTO, stored procedure temporanee e tabelle temporanee quando il contesto di connessione è associato a un database e quindi fare riferimento quando il contesto è passato a un altro database.
Puoi controllare il tuo server confronto utilizzando:
SELECT SERVERPROPERTY('collation');
SQL_Latin1_General_CP1_CI_AS
(1 row(s) affected)