| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- const fs = require('fs')
- const path = require('path')
- const SQL_FILE = process.argv[3]
- ? path.resolve(process.argv[3])
- : path.join(__dirname, '../sql/master/V20260628_02__remove_dashboard_restore_qdrant_menu.sql')
- const DB = {
- host: process.env.DB_HOST || 'cq-cdb-8fjmemkb.sql.tencentcdb.com',
- port: Number(process.env.DB_PORT || 27220),
- user: process.env.DB_USER || 'root',
- password: process.env.DB_PASSWORD || 'Ylrz_1q2w3e4r5t6y',
- database: process.env.DB_NAME || 'ylrz_saas',
- multipleStatements: false
- }
- function loadStatements(filePath) {
- const raw = fs.readFileSync(filePath, 'utf8')
- return raw
- .split(';')
- .map(s => s.trim())
- .filter(s => s && !s.split('\n').every(line => !line.trim() || line.trim().startsWith('--')))
- }
- async function main() {
- const mysql = require('mysql2/promise')
- const conn = await mysql.createConnection(DB)
- const statements = loadStatements(SQL_FILE)
- console.log('Target DB:', `${DB.host}:${DB.port}/${DB.database}`)
- console.log('SQL file:', SQL_FILE)
- console.log('Statements:', statements.length)
- try {
- for (const stmt of statements) {
- const [result] = await conn.query(stmt)
- console.log(`${stmt.replace(/\s+/g, ' ').slice(0, 80)}... -> affectedRows=${result.affectedRows}`)
- }
- for (const table of ['sys_menu', 'tenant_sys_menu', 'tenant_company_menu']) {
- const [rows] = await conn.query(`SELECT COUNT(*) AS c FROM ${table} WHERE menu_id = 29924`)
- console.log(`verify ${table}.menu_id=29924 => ${rows[0].c}`)
- }
- console.log('Done.')
- } finally {
- await conn.end()
- }
- }
- main().catch(err => {
- console.error('FAILED:', err.message || err)
- process.exit(1)
- })
|