const pool = require('./index') /** * 查询全部 */ async function findAll(table) { const [rows] = await pool.query( `SELECT * FROM ${table}` ) return rows } /** * 根据ID查询 */ async function findById(table, id) { const [rows] = await pool.query( `SELECT * FROM ${table} WHERE id = ?`, [id] ) return rows[0] } /** * 新增 */ async function create(table, data) { const keys = Object.keys(data) const values = Object.values(data) const fields = keys.join(',') const placeholders = keys.map(() => '?').join(',') const sql = ` INSERT INTO ${table} (${fields}) VALUES (${placeholders}) ` const [result] = await pool.query(sql, values) return result } /** * 更新 */ async function update(table, id, data) { const keys = Object.keys(data) const values = Object.values(data) const setStr = keys .map(key => `${key} = ?`) .join(',') const sql = ` UPDATE ${table} SET ${setStr} WHERE id = ? ` const [result] = await pool.query( sql, [...values, id] ) return result } /** * 删除 */ async function remove(table, id) { const [result] = await pool.query( `DELETE FROM ${table} WHERE id = ?`, [id] ) return result } module.exports = { findAll, findById, create, update, remove }