2013-03-11 32 views
14

我正在使用MS Access通過DSN連接來連接到Sql Server。這是一個到sql server後端的鏈接表。這裏是連接字符串ApplicationIntent = ReadOnly在連接字符串中的含義

ODBC;DSN=mydsn;Description=mydesc;Trusted_Connection=Yes;APP=Microsoft Office 2010;DATABASE=mydb;ApplicationIntent=READONLY;;TABLE=dbo.mytable 

正如你可以看到有連接字符串中ApplicationIntent=READONLY標籤。這是什麼意思。我是否以只讀方式連接到數據庫?建議使用此連接字符串執行更新和插入操作嗎?

回答

16

這意味着如果您在SQL Server 2012中使用可用性組,則引擎知道您的連接是隻讀的,並且可以路由到只讀副本(如果存在)。一些信息:

Configure Read-Only Access on an Availability Replica

Availability Group Listeners, Client Connectivity, and Application Failover

如果您現在還沒有使用可用性組,它可以是一個好主意離開,在那裏向前兼容,但它確實取決於是否或者不是你故意只是在閱讀。這應該防止寫入,但有一些警告。這些Connect項目可能會有用,或者可能會讓您撓頭。我會承認我沒有讀過它們。

ApplicationIntent=ReadOnly allows updates to a database

ApplicationIntent=ReadOnly does not send the connection to the secondary copy