Files
Brancheneinstufung2/company-explorer/backend/scripts/migrate_v3_to_v4.py

50 lines
1.7 KiB
Python

import sqlite3
import os
# DB Path relative to this script
# script is in company-explorer/backend/scripts/
# DB is in company-explorer/companies_v3_fixed_2.db
DB_PATH = os.path.join(os.path.dirname(__file__), "../../companies_v3_fixed_2.db")
def add_column(cursor, table, column, type_def):
try:
print(f"Adding column {column} to {table}...")
cursor.execute(f"ALTER TABLE {table} ADD COLUMN {column} {type_def}")
print("Done.")
except sqlite3.OperationalError as e:
if "duplicate column name" in str(e):
print(f"Column {column} already exists.")
else:
print(f"Error: {e}")
def migrate():
if not os.path.exists(DB_PATH):
print(f"Database not found at {DB_PATH}")
return
conn = sqlite3.connect(DB_PATH)
cursor = conn.cursor()
# Industries columns
add_column(cursor, "industries", "notion_id", "TEXT")
add_column(cursor, "industries", "industry_group", "TEXT")
add_column(cursor, "industries", "status_notion", "TEXT")
add_column(cursor, "industries", "whale_threshold", "REAL")
add_column(cursor, "industries", "min_requirement", "REAL")
add_column(cursor, "industries", "scraper_keywords", "TEXT")
add_column(cursor, "industries", "core_unit", "TEXT")
add_column(cursor, "industries", "proxy_factor", "TEXT")
# Robotics Categories columns
add_column(cursor, "robotics_categories", "notion_id", "TEXT")
# Enrichment Data columns (just in case)
add_column(cursor, "enrichment_data", "wiki_verified_empty", "BOOLEAN DEFAULT 0")
conn.commit()
conn.close()
print("Migration completed.")
if __name__ == "__main__":
migrate()