#!/usr/bin/env node /** * Simple D1 query helper script * Usage: node scripts/d1-query.js "SELECT * FROM User LIMIT 5" * Usage: node scripts/d1-query.js --remote "SELECT COUNT(*) FROM Company" */ import { execSync } from "child_process"; const args = process.argv.slice(2); if (args.length === 0) { console.log('Usage: node scripts/d1-query.js [--remote] "SQL_QUERY"'); console.log("Examples:"); console.log(' node scripts/d1-query.js "SELECT * FROM User LIMIT 5"'); console.log( ' node scripts/d1-query.js --remote "SELECT COUNT(*) FROM Company"' ); process.exit(1); } const isRemote = args.includes("--remote"); const query = args[args.length - 1]; if (!query || query.startsWith("--")) { console.error("Error: Please provide a SQL query"); process.exit(1); } const remoteFlag = isRemote ? "--remote" : ""; const command = `npx wrangler d1 execute d1-notso-livedash ${remoteFlag} --command "${query}"`; try { console.log(`🔍 Executing${isRemote ? " (remote)" : " (local)"}: ${query}\n`); execSync(command, { stdio: "inherit" }); } catch (error) { console.error("Query failed:", error.message); process.exit(1); }