Odio la sensibilidad de mayúsculas y minúsculas en las bases de datos, pero estoy desarrollando para un cliente que lo usa. ¿Cómo puedo activar esta opción en mi SQL Server, así puedo estar seguro de haber acertado con el caso en todas mis consultas?¿Cómo cambio SQL Server 2005 para que distinga entre mayúsculas y minúsculas?
Respuesta
¿Qué tal:
ALTER DATABASE database_name COLLATE collation_name
Ver BOL para un list of collation options y escoger el mayúsculas y minúsculas que mejor se adapte a sus necesidades (es decir, el que su cliente está utilizando).
Obviamente, es probable que sea una buena idea hacer una copia de seguridad completa de su base de datos antes de intentar esto. Nunca he intentado usar una base de datos con una intercalación diferente a la intercalación predeterminada del servidor, así que no sé de ningún "truco". Pero si tiene buenas copias de seguridad y las prueba en su entorno antes de implementarlas en su cliente, no puedo imaginar que haya mucho riesgo involucrado.
Tendrás que cambiar la intercalación de la base de datos. También deberá modificar la clasificación de tabla y columna. Creo que puedes encontrar un script allí si lo googleas.
No es necesario que cambie la intercalación en toda la base de datos, si la declara en la tabla o columnas que deben distinguir entre mayúsculas y minúsculas. De hecho, puede anexarlo a operaciones individuales según sea necesario.
SELECT name WHERE 'greg' = name COLLATE Latin1_GENERAL_CS_AS
que sé, usted ha dicho que desea que esto se aplica en toda la base de datos. Pero menciono esto porque en ciertos entornos alojados, no puede controlar esta propiedad, que se establece cuando se crea la base de datos.
Si tiene una base de datos que tiene una clasificación diferente a la predeterminada de la instancia, puede tener problemas al intentar unir sus tablas con las temporales. Las tablas temporales tienen una intercalación de la instancia (porque son objetos del sistema) por lo que debe usar la cláusula COLLATE database_default en sus uniones.
select temp.A, table.B
from #TEMPORARY_TABLE temp inner join table
on temp.X COLLATE database_default = table.Y
Fuerza al cotejo de temp.X (en este ejemplo) para la intercalación de la DB actual.
- 1. Cómo configurar MySQL para que distinga entre mayúsculas y minúsculas
- 2. ¿Cómo hacer que Regex no distinga entre mayúsculas y minúsculas?
- 3. Forzar consulta de T-SQL para que distinga entre mayúsculas y minúsculas en MS
- 4. Hacer que Entity Framework no distinga entre mayúsculas y minúsculas
- 5. ¿Cómo configurar Sqlite3 para que no distinga entre mayúsculas y minúsculas cuando se compara una cadena?
- 6. ¿Cambia la intercalación de SQL Server a mayúsculas o minúsculas de mayúsculas y minúsculas?
- 7. ¿Puedo hacer que Subversion + TortoiseSVN no distinga entre mayúsculas y minúsculas para Windows?
- 8. ¿Cómo puedo hacer que la búsqueda de la tecla hash no distinga entre mayúsculas y minúsculas?
- 9. getOptions Perl() entre mayúsculas y minúsculas
- 10. ¿Es posible que BeautifulSoup funcione de manera que no distinga entre mayúsculas y minúsculas?
- 11. ¿Es posible que lxml funcione de manera que no distinga entre mayúsculas y minúsculas?
- 12. ¿Cómo puedo hacer que Array.Contains distinga entre mayúsculas y minúsculas en una matriz de cadenas?
- 13. ¿Cómo puedo hacer que mi servidor local distinga entre mayúsculas y minúsculas?
- 14. ¿Hay alguna manera en Oracle de hacer que una columna no distinga entre mayúsculas y minúsculas?
- 15. Hacer que el elemento ArrayList no distinga entre mayúsculas y minúsculas
- 16. Cómo determinar si una instancia de SQL Server distingue entre mayúsculas y minúsculas o no
- 17. T-SQL: ¿Cómo creo una clave única que distingue entre mayúsculas y minúsculas?
- 18. ¿Hace que mysql sea sensible a mayúsculas y minúsculas?
- 19. Columna única de SQL Server 2008 que distingue entre mayúsculas y minúsculas
- 20. Cómo hacer que una columna sea sensible a mayúsculas y minúsculas en sql 2005 o 2008
- 21. Cambio de mayúsculas y minúsculas en Vim
- 22. RegularExpressionAttribute - ¿Cómo hacer que no distinga entre mayúsculas y minúsculas para la validación del lado del cliente?
- 23. OData y distinción entre mayúsculas y minúsculas
- 24. ¿Los procedimientos almacenados de SQL distinguen entre mayúsculas y minúsculas?
- 25. ¿Por qué SQL Server '=' comparator no distingue entre mayúsculas y minúsculas?
- 26. ¿Hay alguna forma de configurar Redis para que no distinga entre mayúsculas y minúsculas con respecto a las claves?
- 27. NSMutableArray clasificación - entre mayúsculas y minúsculas
- 28. ¿Se puede hacer que el glob() de PHP busque archivos de manera que no distinga entre mayúsculas y minúsculas?
- 29. expresiones regulares entre mayúsculas y minúsculas
- 30. escritura entre mayúsculas y minúsculas versión
pero no lo haga aplicando LOWER() a la columna, de lo contrario no podrá usar un índice ... –
Ah, gracias por la sugerencia. Adapte esa línea de un script que uso ... pero arreglaré la muestra. – harpo