Вот отрывок кода
import pyodbc import time from datetime import datetime class Database(object): def __init__(self, driver='{SQL Server}', server='localhost', port='1433', name_db='', user='sa', password=''): self.driver = 'DRIVER=' + driver self.server = 'SERVER=' + server self.port = 'PORT=' + port self.db = 'DATABASE=' + name_db self.user = 'UID=' + user self.pw = 'PWD=' + password self.conn_str = ';'.join([self.driver, self.server, self.port, self.db, self.user, self.pw]) def db_connect(self): try: self.connect = pyodbc.connect(self.conn_str) print(datetime.now().replace(microsecond=0), 'Connect OK') except: print(datetime.now().replace(microsecond=0), 'Error connect! Repeat after 60 seconds...') time.sleep(60) db_connect(self) def connect_close(self): self.connect.close() print('Connect close!') def main(): try: db = Database(server='ADMIN-ПК\SQLEXPRESS', name_db='Base', password='aaaa') db.db_connect() time.sleep(60) db.connect_close() time.sleep(90) except: pass
После функции db.connect_close() но до закрытия программы, в SQL Menegment Studio вижу что соединение еще активно… и оно пропадает только после закрытия программы. Но мне надо чтобы оно сразу же закрывалось. Так и не смог найти почему не срабатывает.
Лично у меня есть версия что может драйвер указан не правильно… Может быть причина в этом? И где вообще узнать какой именно драйвер мне надо указывать для какой версии MSSQL.
Заранее спасибо.