Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e685a1d

Browse files
Minor refactor.
1 parent 1bd8156 commit e685a1d

File tree

4 files changed

+15
-9
lines changed

4 files changed

+15
-9
lines changed

‎sqlalchemy_tutorial/.flake8

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[flake8]
2+
select = E9,F63,F7,F82
3+
exclude = .git,.github,__pycache__,.pytest_cache,.venv,logs,creds

‎sqlalchemy_tutorial/part1_connections/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
"""Demonstrate how to execute raw SQL queries using SQLAlchemy."""
12
from database import engine
23

34
from .queries import fetch_job_listings, update_job_listing

‎sqlalchemy_tutorial/part1_connections/queries.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
"""Execute raw SQL queries against an SQLAlchemy engine."""
22
from typing import List, Optional
3+
import json
34

45
from sqlalchemy import text
56
from sqlalchemy.engine.base import Engine
@@ -17,17 +18,18 @@ def fetch_job_listings(engine: Engine) -> Optional[List[dict]]:
1718
:return: Optional[List[dict]]
1819
"""
1920
try:
21+
LOGGER.info("Fetching job listings...")
2022
with engine.begin() as conn:
2123
result = conn.execute(
2224
text(
2325
"SELECT job_id, agency, business_title, \
2426
salary_range_from, salary_range_to \
25-
FROM nyc_jobs ORDER BY RAND() LIMIT 10;"
27+
FROM nyc_jobs ORDER BY RAND() LIMIT 5;"
2628
),
2729
)
2830
results = result.fetchall()
2931
results_dict = [row._asdict() for row in results]
30-
LOGGER.info(f"Selected {result.rowcount} rows.")
32+
LOGGER.info(f"Selected {result.rowcount} rows: {json.dumps(results_dict, indent=2)}")
3133
return results_dict
3234
except SQLAlchemyError as e:
3335
LOGGER.error(f"SQLAlchemyError while fetching records: {e}")
@@ -52,7 +54,7 @@ def update_job_listing(engine: Engine) -> Optional[List[dict]]:
5254
WHERE job_id = 229837;"
5355
)
5456
)
55-
LOGGER.info(f"Updated {result.rowcount} row: {result}")
57+
LOGGER.success(f"Updated {result.rowcount} row: {result}")
5658
return result
5759
except SQLAlchemyError as e:
5860
LOGGER.error(f"SQLAlchemyError while updating records: {e}")

‎sqlalchemy_tutorial/part2_orm/orm.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ def orm_create_user(session: Session, user: User) -> User:
2121
LOGGER.success(f"Created new user: {user}")
2222
return user
2323
except IntegrityError as e:
24-
LOGGER.error(e.orig)
25-
raise e.orig
24+
LOGGER.error(f"IntegrityError when creating user: {e}")
2625
except SQLAlchemyError as e:
26+
LOGGER.error(f"SQLAlchemyError when creating user: {e}")
27+
except Exception as e:
2728
LOGGER.error(f"Unexpected error when creating user: {e}")
28-
raise e
2929

3030

3131
def orm_delete_user(session: Session, user: User):
@@ -42,8 +42,8 @@ def orm_delete_user(session: Session, user: User):
4242
session.commit() # Commit the change
4343
LOGGER.success(f"Deleted user: {user}")
4444
except IntegrityError as e:
45-
LOGGER.error(e.orig)
46-
raise e.orig
45+
LOGGER.error(f"IntegrityError when deleting user: {e}")
4746
except SQLAlchemyError as e:
47+
LOGGER.error(f"SQLAlchemyError when deleting user: {e}")
48+
except Exception as e:
4849
LOGGER.error(f"Unexpected error when deleting user: {e}")
49-
raise e

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /