У меня есть доступ только для чтения к базе данных SQL Server. Как передать параметр подключения «ApplicationIntent = ReadOnly» при использовании pymssql для подключения к базе данных? Если pymssql не поддерживает его, есть ли другая библиотека Python, которую я могу использовать?
Как передать параметр подключения ApplicationIntent=ReadOnly при использовании pymssql
Ответы (3)
Поскольку pymssql зависит от FreeTDS, вам действительно нужно указать параметры подключения к вашему серверу MS-SQL, используемому FreeTDS.
Поскольку ApplicationIntent указан в руководстве пользователя freetds в качестве опции, вы должны иметь возможность его использовать. .
person
Steve
schedule
29.06.2016
Ссылка больше не работает. Вот новый.
- person costigator; 05.01.2021
Единственный способ настроить намерение подключения только для чтения с 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')
person
Jack
schedule
11.10.2018
Спасибо за решение, все работает! Единственное требование состоит в том, что в системе должен быть установлен драйвер ODBC для MSSQL. Например, на моем компьютере с Windows 10 я установил это.
- person costigator; 05.01.2021
pyodbc имеет параметр только для чтения. Например:
import pyodbc
conn = pyodbc.connect(driver='{SQL Server}', host=Server, database=Database,
trusted_connection='yes', user='', password='', readonly = True)
person
Hobbes
schedule
21.07.2016
Любая причина, по которой это было отмечено как бесполезное? У меня нормально работает без проблем?
- person Neil S; 20.06.2019
Вероятно, потому что вопрос касается pymssql, а не pyodbc.
- person Nathan Griffiths; 03.11.2020