我只能只读访问SQL Server数据库。如何传递连接参数" ApplicationIntent = ReadOnly"什么时候使用pymssql连接数据库?如果pymssql不支持它,我可以使用其他任何python库吗?
答案 0 :(得分:0)
使用pymssql配置只读连接意图的唯一方法似乎是配置基于它的freetds,但对我来说却行不通。我不得不使用pyodbc代替pymssql
from pyodbc import connect
conn = connect(
'DRIVER={ODBC Driver 17 for SQL Server};SERVER=' + host + ';PORT=' + port + ';DATABASE='
+ database + ';UID=' + user + ';PWD=' + password + ';ApplicationIntent=ReadOnly')
答案 1 :(得分:-1)
因为pymssql依赖于FreeTDS 您确实需要解决FreeTDS使用的MS-SQL服务器的连接参数
因为ApplicationIntent作为选项列在freetds user guide中,所以您应该可以使用它。
答案 2 :(得分:-1)
pyodbc有一个只读参数。例如:
import pyodbc
conn = pyodbc.connect(driver='{SQL Server}', host=Server, database=Database,
trusted_connection='yes', user='', password='', readonly = True)