db-is-empty.mjs 566 Bytes
#!/usr/bin/env node
/** 输出 voko 库是否为空(无任何表),供本地一键验收决定是否执行 db:init。不会建任何表。 */
import { createDb } from '@drama/db'

import { databaseUrlFromArgs } from '../src/db/env-file.js'

const db = createDb({ url: databaseUrlFromArgs(process.argv.slice(2)), pool: { min: 1, max: 1 } })
try {
  const [rows] = await db.raw('SELECT COUNT(*) AS n FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE()')
  console.log(Number(rows[0].n) === 0 ? 'empty' : 'not-empty')
} finally {
  await db.destroy()
}