ADD requirements.txt & Database class

This commit is contained in:
2025-11-06 15:44:45 +00:00
parent a9778f26b2
commit be61a9c7ae
3 changed files with 30 additions and 0 deletions

26
db/database.py Normal file
View File

@@ -0,0 +1,26 @@
# To connect to PostgreSQL database
import psycopg2
from psycopg2 import sql
from psycopg2.extras import RealDictCursor
from typing import List, Dict, Any, Optional
class Database:
def __init__(self, db_name: str, user: str, password: str, host: str = 'localhost', port: int = 5432):
self.connection = psycopg2.connect(
dbname=db_name,
user=user,
password=password,
host=host,
port=port
)
self.connection.autocommit = True
def execute_query(self, query: str, params: Optional[tuple] = None):
with self.connection.cursor(cursor_factory=RealDictCursor) as cursor:
cursor.execute(query, params)
if cursor.description:
return cursor.fetchall()
return []
def close(self):
self.connection.close()