db-query.js 1.11 KB
#!/usr/bin/env node
/**
 * 绿纤ERP 数据库快速查询工具
 * 用法: node db-query.js "SQL语句"
 * 示例: node db-query.js "SHOW TABLES"
 *       node db-query.js "SELECT COUNT(*) as cnt FROM BASE_USER"
 *       node db-query.js "SELECT F_Id, F_Account, F_RealName, F_EnabledMark FROM BASE_USER LIMIT 10"
 */

const mysql = require('mysql2/promise');

const DB_URL = 'mysql://nettest:nettest@rm-2vccze142rc9a8f58bo.mysql.cn-chengdu.rds.aliyuncs.com:3306/lqerp_dev';

async function main() {
  const sql = process.argv[2];
  if (!sql) {
    console.log('用法: node db-query.js "SQL语句"');
    console.log('示例: node db-query.js "SHOW TABLES"');
    process.exit(1);
  }

  const conn = await mysql.createConnection(DB_URL);
  try {
    const [rows, fields] = await conn.query(sql);
    if (Array.isArray(rows)) {
      console.log(`共 ${rows.length} 行`);
      if (rows.length > 0) {
        console.table(rows);
      }
    } else {
      console.log(JSON.stringify(rows, null, 2));
    }
  } finally {
    await conn.end();
  }
}

main().catch(e => {
  console.error('查询失败:', e.message);
  process.exit(1);
});