¿Cómo establecer la clasificación para una conexión en SQL Server?

¿Cómo puedo configurar la intercalación que utilizará SQL Server mientras dure esa conexión?

No hasta que me conecte a SQL Server, sé qué intercalación quiero usar.

p.ej. un navegador con idiomafr-IT se ha conectado al sitio web. Cualquier consulta que ejecute en esa conexión quiero seguir la Lengua francesa, variante de Italia colación.

i visualiza una propiedad hipotética de nivel de conexión, similar aSET ANSI_NULLS OFF, pero para cotejar1:

SET COLLATION_ORDER 'French_CI_AS'

SELECT TOP 100 FROM Orders
ORDER BY ProjectName

y despué

SELECT * FROM Orders
WHERE CustomerID = 3277 
AND ProjectName LIKE '%l''ecole%'

y despué

UPDATE Quotes
SET IsCompleted = 1
WHERE QuoteName = 'Cour de l''école'

Al mismo tiempo, cuando unchin el cliente se conecta:

SET COLLATION_ORDER Chinese_PRC_CI_AI_KS_WS

SELECT TOP 100 FROM Orders
ORDER BY ProjectName

SELECT * FROM Orders
WHERE CustomerID = 3277 
AND ProjectName LIKE '學校'

UPDATE Quotes
SET IsCompleted = 1
WHERE QuoteName = '學校的操場'

Ahora yopodrí alter everySELECT declaración en el sistema para permitirme pasar una intercalación:

SELECT TOP 100 FROM Orders
WHERE CustomerID = 3278
ORDER BY ProjectName COLLATE French_CI_AS

Pero no puede pasar una orden de clasificación como parámetro a un procedimiento almacenado:

CREATE PROCEDURE dbo.GetCommonOrders 
   @CustomerID int, @CollationOrder varchar(50)
AS

SELECT TOP 100 FROM Orders
WHERE CustomerID = @CustomerID
ORDER BY ProjectName COLLATE @CollationOrder

Y elCOLLATEa cláusula @ no puede ayudarme al realizar unaUPDATE o unSELECT.

Nota Todas las columnas de cadena en la base de datos ya estánnchar, nvarchar ontext. No estoy hablando de la clasificación predeterminada aplicada a un servidor, base de datos, tabla o columna para columnas no Unicode (es decir,char, varchar, text). Estoy hablando de la clasificación utilizada por SQL Server al comparar y ordenar cadenas.

¿Cómo puedo especificar por-conexió colación?

Ver tambié Pregunta similar, pero para ADO.net y cadenas de conexión Pregunta similar, pero para ASP.net MVC2 y MySQL

1 sql hipotético que exhibe problemas locales

Respuestas a la pregunta(1)

Su respuesta a la pregunta