Condividi tramite


Utilizzo delle regole di confronto (SQL Server Compact)

Le regole di confronto consentono di specificare le modalità di ordinamento e di confronto delle stringhe di dati di tipo carattere in base alle norme di lingue e impostazioni locali particolari.

In SQL Server Compact è disponibile il supporto per le regole di confronto di Windows. Per un elenco di nomi di regole di confronto di Windows supportati in SQL Server Compact, vedere Regole di confronto supportate (SQL Server Compact).  

SQL Server Compact 4.0 supporta le regole di confronto con distinzione tra maiuscole e minuscole. La distinzione tra maiuscole e minuscole viene impostata a livello di database. In altre parole, tutte le colonne stringa (colonne di tipi di dati, nchar, nvarchar, e ntext) presenti nelle tabelle utente del database dispongono della stessa impostazione relativa alla distinzione tra maiuscole e minuscole specificata a livello di database. Tale impostazione viene applicata inoltre agli indici sulle colonne stringa.

In un database di SQL Server Compact, ai nomi degli oggetti, ad esempio i nomi delle tabelle, le parole chiave del linguaggio, le funzioni e le viste, non viene applicata la distinzione tra maiuscole e minuscole, anche se le regole di confronto rispettano tale distinzione. Sebbene questa caratteristica non sia coerente con SQL Server, tale comportamento corrisponde allo standard SQL in base al quale le regole di confronto di un database vengono utilizzate solo per confrontare i dati utente.

Connessione a database con distinzione tra maiuscole e minuscole

La connessione a qualsiasi database di SQL Server Compact con distinzione tra maiuscole e minuscole può essere eseguita in modo analogo a quella di qualsiasi altro database di SQL Server Compact.

In SQL Server Compact 4.0 è disponibile il supporto per una nuova proprietà della stringa di connessione di tipo Boolean, ovvero "Case Sensitive" o "SSCE:Case Sensitive", che consente di determinare se le regole di confronto del database rispettano la distinzione tra maiuscole e minuscole. Se si tenta di stabilire una connessione a un database di SQL Server Compact esistente con la proprietà "Case Sensitive" nella stringa di connessione, in SQL Server Compact 4.0 tale impostazione viene ignorata. In altre parole, la proprietà "Case Sensitive" rappresenta un'opzione specificata al momento della creazione del database e viene ignorata in caso di connessione a un database esistente. Se la distinzione tra maiuscole e minuscole non viene specificata durante la creazione del database, per impostazione predefinita viene creato un database che non rispetta tale distinzione.

La proprietà Case Sensitive è una nuova caratteristica di SQL Server Compact 4.0 e non è supportata in nessuna versione precedente.

Creazione di database con distinzione tra maiuscole e minuscole

In SQL Server Compact, la specifica delle regole di confronto con distinzione tra maiuscole e minuscole per i nuovi database è supportata tramite le chiamate API.

È possibile utilizzare la nuova proprietà della stringa di connessione di tipo Boolean, ovvero "Case Sensitive" o "SSCE:Case Sensitive", che consente di determinare se le regole di confronto del database rispettano la distinzione tra maiuscole e minuscole. Per la programmazione nativa, nel set di proprietà DBPROPSET_SSCE_DBINIT è disponibile una nuova proprietà DBPROP_SSCE_DBCASESENSITIVE che consente di determinare se le regole di confronto del database rispettano la distinzione tra maiuscole e minuscole.

Quando si imposta la proprietà Case Sensitive su true, gli indici sulle colonne stringa vengono ricompilati nel database.

Inoltre è possibile specificare le regole di confronto per un nuovo database tramite la clausola COLLATE (SQL Server Compact) dell'istruzione CREATE DATABASE (SQL Server Compact). Tuttavia, in questo caso, l'unica opzione supportata è quella relativa all'assenza della distinzione tra maiuscole e minuscole (CI, Case-Insensitive).

I database con distinzione tra maiuscole e minuscole possono essere creati anche tramite Visual Studio 2010 SP1 come riportato di seguito:

  1. In Esplora server fare clic con il pulsante destro del mouse sul nodo Connessioni dati e selezionare Aggiungi connessioni dal menu sensibile al contesto.

  2. Nella finestra di dialogo Aggiungi connessione verificare che nel campo Origine dati sia specificato MicrosoftSQL Server Compact 4.0. Se l'origine dati non è SQL Server Compact 4.0, seguire la procedura seguente:

    • Nella finestra di dialogo Aggiungi connessione fare clic su Modifica.

    • Selezionare MicrosoftSQL Server Compact 4.0 da Origini dati.

    • Se si desidera utilizzare SQL Server Compact 4.0 per impostazione predefinita, selezionare la casella di controllo Usa sempre questa selezione.

    • Fare clic su OK nella finestra di dialogo Modifica origine dati.

  3. Nella finestra di dialogo Aggiungi connessione fare clic su Crea.

  4. Nella finestra di dialogo Crea nuovo database di SQL Server Compact inserire il percorso del database e selezionare la casella Distinzione maiuscole/minuscole. Il database creato nel percorso specificato è un database con distinzione tra maiuscole e minuscole.

Vedere anche

Concetti

Considerazioni sulle funzionalità internazionali (SQL Server Compact)