42 lines
1017 B
JavaScript
42 lines
1017 B
JavaScript
const mysql = require('mysql2/promise');
|
|
require('dotenv').config();
|
|
|
|
const pool = mysql.createPool({
|
|
host: process.env.DB_HOST || 'localhost',
|
|
user: process.env.DB_USER || 'root',
|
|
password: process.env.DB_PASSWORD || '123456',
|
|
database: process.env.DB_NAME || 'score_management',
|
|
waitForConnections: true,
|
|
connectionLimit: 10,
|
|
queueLimit: 0
|
|
});
|
|
|
|
// 封装基本查询方法
|
|
const query = async (sql, params) => {
|
|
try {
|
|
const [rows] = await pool.execute(sql, params);
|
|
return rows;
|
|
} catch (error) {
|
|
console.error('Database query error:', error);
|
|
throw error;
|
|
}
|
|
};
|
|
|
|
// 测试连接
|
|
const testConnection = async () => {
|
|
try {
|
|
const connection = await pool.getConnection();
|
|
console.log('数据库连接成功');
|
|
connection.release();
|
|
return true;
|
|
} catch (error) {
|
|
console.error('数据库连接失败:', error.message);
|
|
return false;
|
|
}
|
|
};
|
|
|
|
module.exports = {
|
|
pool,
|
|
query,
|
|
testConnection
|
|
}; |