Azure SQL set default Collation

azure-sql-database entity-framework-core

Pregunta

La intercalación predeterminada para Azure SQL es SQL_Latin1_General_CP1_CI_AS, no demasiado buena si su idioma tiene acentos o signos diacríticos y desea ignorarlos. Cada vez que quiero implementar una aplicación web con una base de datos en Azure, me veo obligado a crear la base de datos manualmente y establecer la intercalación en ese momento. Si esta base de datos debe eliminarse por alguna razón, debo tener en cuenta que debe crearse manualmente de nuevo para establecer la intercalación y el nivel de precios.

Me gustaría usar los métodos de Entity Framework Core para crear desde cero la base de datos y establecer la intercalación desde allí (VerifyDatabaseCreated and Migrate), pero creo que esto no es posible en este momento y, dada la velocidad en que se está desarrollando el Entity Framework Probablemente no será hasta el año 2035.

Entonces, la mejor solución es establecer la intercalación predeterminada en la instancia del servidor (para que la nueva base de datos creada obtenga este valor predeterminado), pero no hay opción cuando la creas ... Sé que esto se puede hacer para una "normalidad" Instancia de SQL Server pero, ¿alguien sabe si es posible para una instancia de SaaS Azure SQL Server? ¿Si es así, cómo?

Respuesta popular

A partir de hoy, no puede cambiar la intercalación del servidor SQL DB de Azure, solo la base de datos.

Dicho esto, puedes usar EF para ejecutar una declaración T-SQL para cambiar la intercalación de la base de datos SQL de Azure ejecutando algo como esto:

USE maestro;
IR
ALTER DATABASE MyOptionsTest
COLLATE French_CI_AS;
IR



Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow