import "dotenv/config" import { db } from "@/shared/db" import { sql } from "drizzle-orm" async function reset() { console.log("🔥 Resetting database...") // Disable foreign key checks await db.execute(sql`SET FOREIGN_KEY_CHECKS = 0;`) // Get all table names const tables = await db.execute(sql` SELECT table_name FROM information_schema.tables WHERE table_schema = DATABASE(); `) // Drop each table const rows = (tables as unknown as [unknown])[0] if (!Array.isArray(rows)) return for (const row of rows) { const record = row as Record const tableName = typeof record.TABLE_NAME === "string" ? record.TABLE_NAME : typeof record.table_name === "string" ? record.table_name : null if (!tableName) continue console.log(`Dropping table: ${tableName}`) await db.execute(sql.raw(`DROP TABLE IF EXISTS \`${tableName}\`;`)) } // Re-enable foreign key checks await db.execute(sql`SET FOREIGN_KEY_CHECKS = 1;`) console.log("✅ Database reset complete.") process.exit(0) } reset().catch((err) => { console.error("❌ Reset failed:", err) process.exit(1) })