J'utilise MS Access pour me connecter à Sql Server via une connexion DSN. Il s'agit d'une table liée à un serveur principal SQL. Voici la chaîne de connexion
ODBC;DSN=mydsn;Description=mydesc;Trusted_Connection=Yes;APP=Microsoft Office 2010;DATABASE=mydb;ApplicationIntent=READONLY;;TABLE=dbo.mytable
Comme vous pouvez le voir, il y a un ApplicationIntent=READONLY
tag dans la chaîne de connexion. Qu'est-ce que ça veut dire. Suis-je connecté à la base de données en lecture seule? Est-il recommandé d'effectuer des mises à jour et des insertions à l'aide de cette chaîne de connexion?
Cela signifie que si vous utilisez des groupes de disponibilité dans SQL Server 2012, le moteur sait que vos connexions sont en lecture seule et peuvent être acheminées vers des réplicas en lecture seule (si elles existent). Quelques informations ici:
Configurer l'accès en lecture seule sur un réplica de disponibilité
écouteurs de groupe de disponibilité, connectivité client et basculement d'application
Si vous n'utilisez pas actuellement les groupes de disponibilité, il peut être une bonne idée de laisser cela là pour la compatibilité ascendante, mais cela dépend vraiment si oui ou non vous ne faites que lire intentionnellement. Cela devrait empêcher les écritures mais il y a quelques mises en garde. Ces éléments Connect peuvent être utiles ou vous laisser vous gratter la tête. J'avoue que je ne les ai pas lus.
ApplicationIntent = ReadOnly autorise les mises à jour d'une base de données
ApplicationIntent = ReadOnly n'envoie pas la connexion à la copie secondaire