Подключение к базе данных занимает слишком много времени [pyodbc] - PullRequest
1 голос
/ 04 мая 2020

Я хочу получить доступ к своей базе данных MS SQL, используя python.

Я написал простой скрипт для доступа только к 1 строке из моей таблицы базы данных.

Как ни странно, это занимает около 12 секунд, чтобы подключиться только к моей базе данных. (что я нашел довольно много для простого соединения)

Я что-то не так делаю?

import pyodbc
import time
import config

connect_start = time.time()

dsn = f'Driver=SQL Server;Server={config.sql["server"]};Database={config.sql["database"]};User={config.sql["user_id"]};Password={config.sql["password"]}'
conn = pyodbc.connect(dsn)
print(f'Connect time: {time.time() - connect_start}')

cursor_start = time.time()

cursor = conn.cursor()
cursor.execute('SELECT * FROM [ytviewer].[dbo].[tbl_provider]')
print(f'Cursor execution time: {time.time() - cursor_start}')

for row in cursor:
    print(row)

Вывод: Время соединения: 12.036243677139282

Время выполнения курсора: 0.0

(1, 'Pldown')

Процесс завершен с кодом выхода 0

1 Ответ

1 голос
/ 05 мая 2020

Оказывается, я использовал неверный драйвер для подключения.

Это то, что мне пришлось использовать: Driver = ODB C Драйвер 17 для SQL Сервер

...