COLLATE en tablas de SQL Server 2000

08/02/2005 - 12:00 por Keyhelp | Informe spam
Hola a todos:
Hemos definido una base de datos en SQL Server 2000 con el COLLATE
SQL_latin1_CP850_CS_AS, lo de Case Sensitive y Acent Sensitive es por
petición del cliente, pues quiere diferenciar información guardada en
minúsculas o en mayúsculas el cliente es el que manda !!!
Hemos definido los Script de creación de tablas en mayúsculas, todos sus
campos y sus nombres de tablas, y cuando hacemos alguna select en
minúsculas.. nos dice que la tabla no existe, en cambio si la escribo en
mayúscula si recupera información.
Creia que el COLLATE solo afectaba a los datos y no a la definición de las
tablas.
¿Hay alguna forma de solucionar el problema?, es decir, que las sentencias
que genere sean CI pero los datos sean CS

Gracias por adelantado.

Francisco López
Dpt. Desarrollo
Keyhelp, S.L.
http://www.keyhelp.net

Preguntas similare

Leer las respuestas

#1 ulises
08/02/2005 - 12:46 | Informe spam
No que yo sepa, ten en consideración que las definiciones
de los objetos también son entradas en tablas de la base de
datos, creo que lo mejor en tu caso hubiera sido manejar
solo el CS y AS para las columnas de la tabla donde se
desea manejar esa característica, eso te liberaba del
problema de las mayúsculas y minúsculas en las tablas del
sistema pero te boligaba a manejar la claúsula COLLATE para
las comparaciones de esas columnas.

Saludos,
Ulises

Mostrar la cita
COLLATE
Mostrar la cita
Sensitive es por
Mostrar la cita
guardada en
Mostrar la cita
mayúsculas, todos sus
Mostrar la cita
select en
Mostrar la cita
cambio si la escribo en
Mostrar la cita
definición de las
Mostrar la cita
que las sentencias
Mostrar la cita
#2 Tinoco
08/02/2005 - 12:57 | Informe spam
Hola,

El collate si afecta solo los datos, y los nombres de campos y columnas son
datos de las tablas del sistema en la base de datos. Por eso sucede esto.
Aveces se puede tener problemas cuando el Collate de la BD Master es
diferente a la de la BD de usuario(Ej: ejecutar SP del sistema).

Modificar este indicador para las sentencias lo veo imposible, lo maximo que
se puede hacer es utilizar expresiones en las consultas, pero esto no
soluciona el problema.

SELECT *
FROM tblEmpleado
ORDER BY f_codigo COLLATE French_CI_AI

Espero haber ayudado.

Hermilson Tinoco.
MCDBA, MCSD
Colombia

"Keyhelp" wrote:

Mostrar la cita
Ads by Google
Search Busqueda sugerida