mirror of
https://github.com/pacnpal/Pac-cogs.git
synced 2025-12-20 19:01:06 -05:00
fixed
This commit is contained in:
@@ -7,7 +7,8 @@ from typing import List
|
||||
|
||||
logger = logging.getLogger("DBSchemaManager")
|
||||
|
||||
class SchemaManager:
|
||||
|
||||
class DatabaseSchemaManager:
|
||||
"""Manages database schema creation and updates"""
|
||||
|
||||
SCHEMA_VERSION = 1 # Increment when schema changes
|
||||
@@ -33,11 +34,13 @@ class SchemaManager:
|
||||
"""Create schema version tracking table"""
|
||||
with sqlite3.connect(self.db_path) as conn:
|
||||
cursor = conn.cursor()
|
||||
cursor.execute("""
|
||||
cursor.execute(
|
||||
"""
|
||||
CREATE TABLE IF NOT EXISTS schema_version (
|
||||
version INTEGER PRIMARY KEY
|
||||
)
|
||||
""")
|
||||
"""
|
||||
)
|
||||
# Insert initial version if table is empty
|
||||
cursor.execute("INSERT OR IGNORE INTO schema_version VALUES (0)")
|
||||
conn.commit()
|
||||
@@ -55,8 +58,7 @@ class SchemaManager:
|
||||
with sqlite3.connect(self.db_path) as conn:
|
||||
cursor = conn.cursor()
|
||||
cursor.execute(
|
||||
"UPDATE schema_version SET version = ?",
|
||||
(self.SCHEMA_VERSION,)
|
||||
"UPDATE schema_version SET version = ?", (self.SCHEMA_VERSION,)
|
||||
)
|
||||
conn.commit()
|
||||
|
||||
@@ -80,7 +82,8 @@ class SchemaManager:
|
||||
|
||||
# Version 0 to 1: Initial schema
|
||||
if current_version < 1:
|
||||
migrations.append("""
|
||||
migrations.append(
|
||||
"""
|
||||
CREATE TABLE IF NOT EXISTS archived_videos (
|
||||
original_url TEXT PRIMARY KEY,
|
||||
discord_url TEXT NOT NULL,
|
||||
@@ -100,7 +103,8 @@ class SchemaManager:
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_archived_at
|
||||
ON archived_videos(archived_at);
|
||||
""")
|
||||
"""
|
||||
)
|
||||
|
||||
# Add more migrations here as schema evolves
|
||||
# if current_version < 2:
|
||||
|
||||
@@ -4,9 +4,9 @@ import logging
|
||||
from pathlib import Path
|
||||
from typing import Optional, Dict, Any, List
|
||||
|
||||
from .schema_manager import SchemaManager
|
||||
from .schema_manager import DatabaseSchemaManager
|
||||
from .query_manager import DatabaseQueryManager
|
||||
from .connection_manager import ConnectionManager
|
||||
from .connection_manager import DatabaseConnectionManager
|
||||
|
||||
logger = logging.getLogger("VideoArchiverDB")
|
||||
|
||||
@@ -25,8 +25,8 @@ class VideoArchiveDB:
|
||||
self.db_path.parent.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
# Initialize managers
|
||||
self.connection_manager = ConnectionManager(self.db_path)
|
||||
self.schema_manager = SchemaManager(self.db_path)
|
||||
self.connection_manager = DatabaseConnectionManager(self.db_path)
|
||||
self.schema_manager = DatabaseSchemaManager(self.db_path)
|
||||
self.query_manager = DatabaseQueryManager(self.connection_manager)
|
||||
|
||||
# Initialize database schema
|
||||
|
||||
Reference in New Issue
Block a user