Azure SQL définit le classement par défaut

azure-sql-database entity-framework-core

Question

Le classement par défaut pour Azure SQL est SQL_Latin1_General_CP1_CI_AS, pas très bien si votre langue contient des accents ou des signes diacritiques et que vous souhaitez les ignorer. Chaque fois que je souhaite déployer une application Web avec une base de données sur Azure, je suis obligé de créer la base de données manuellement et de définir le classement à cet instant. Si cette base de données doit être supprimée pour une raison quelconque, je dois garder à l'esprit qu'elle doit être créée à nouveau manuellement pour définir le classement et le niveau de prix.

J'aimerais utiliser les méthodes Entity Framework Core pour créer la base de données à partir de zéro et définir le classement à partir de ce dernier (EnsureDatabaseCreated et Migrate), mais je pense que cela n'est pas possible pour le moment et, étant donné la rapidité de développement d'Entity Framework ce ne sera probablement pas avant 2035.

La meilleure solution consiste donc à définir le classement par défaut sur l'instance du serveur (la nouvelle base de données créée sur celle-ci obtiendrait cette valeur par défaut), mais il n'y a pas d'option lorsque vous la créez ... Je sais que cela peut être fait pour une opération "normale". Instance SQL Server, mais est-ce que quelqu'un sait s'il est possible pour une instance SaaS Azure SQL Server? Si c'est le cas, comment?

Réponse populaire

À ce jour, vous ne pouvez pas modifier le classement du serveur Azure SQL DB - uniquement de la base de données.

Cela dit, vous pouvez utiliser EF pour exécuter une instruction T-SQL afin de modifier le classement de la base de données Azure SQL en exécutant une procédure semblable à celle-ci:

UTILISER le maître;
ALLER
ALTER DATABASE MyOptionsTest
COLLATE French_CI_AS;
ALLER



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow