История изменений
Исправление scientistpython, (текущая версия) :
на практике, в контекстном менеджере вот так перехватывает
from sqlalchemy.exc import IntegrityError
def sessionScope():
try:
session = Session(bind=engine)
yield session
session.commit()
except IntegrityError:
print('pass duplicate')
session.rollback()
except:
session.rollback()
raise
def insert(myTable: MyTable) -> None:
with sessionScope() as session:
session.add(myTable)
Исходная версия scientistpython, :
на практике, в контекстном менеджере перехватывает
from sqlalchemy.exc import IntegrityError
def sessionScope():
try:
session = Session(bind=engine)
yield session
session.commit()
except IntegrityError:
print('pass duplicate')
session.rollback()
except:
session.rollback()
raise
def insert(myTable: MyTable) -> None:
with sessionScope() as session:
session.add(myTable)