69 lines
1.8 KiB
JavaScript
69 lines
1.8 KiB
JavaScript
const mariadb = require('mariadb');
|
|
|
|
// 创建一个连接池
|
|
const pool = mariadb.createPool({
|
|
host: 'localhost',
|
|
user: 'rc',
|
|
password: '1q3e@W$R',
|
|
database: 'Card'
|
|
});
|
|
|
|
// 获取连接
|
|
async function getConnection() {
|
|
let conn;
|
|
try {
|
|
conn = await pool.getConnection();
|
|
console.log("Connected to the database!");
|
|
} catch (err) {
|
|
console.error("Error connecting to the database:", err);
|
|
}
|
|
return conn;
|
|
}
|
|
|
|
// async function insertData(conn) {
|
|
// const query = "INSERT INTO your_table (column1, column2) VALUES (?, ?)";
|
|
// const values = ['value1', 'value2'];
|
|
// try {
|
|
// const result = await conn.query(query, values);
|
|
// console.log(`Inserted with ID: ${result.insertId}`);
|
|
// } catch (err) {
|
|
// console.error("Error inserting data:", err);
|
|
// }
|
|
// }
|
|
|
|
async function fetchData(conn) {
|
|
const query = "SELECT * FROM your_table";
|
|
try {
|
|
const rows = await conn.query(query);
|
|
console.log(rows);
|
|
} catch (err) {
|
|
console.error("Error fetching data:", err);
|
|
}
|
|
}
|
|
|
|
async function isRoomAvailable(conn, roomId) {
|
|
const query = "SELECT 1 FROM Room WHERE RoomID = ? AND Status = 0 LIMIT 1";
|
|
try {
|
|
const rows = await conn.query(query, [roomId]);
|
|
if (rows.length === 0) {
|
|
// 不存在或已被占用
|
|
return false;
|
|
}
|
|
|
|
// 执行更新
|
|
const updateQuery = "UPDATE Room SET Status = 1 WHERE RoomID = ?";
|
|
const result = await conn.query(updateQuery, [roomId]);
|
|
|
|
// 检查是否更新了1行
|
|
return Number(result.affectedRows) === 1;
|
|
} catch (err) {
|
|
console.error("Error checking room availability:", err);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
module.exports = {
|
|
getConnection,
|
|
isRoomAvailable
|
|
};
|