一、
//完成数据库的封装
const mysql= require('mysql')
function db(sql) {
return new Promise((resolve, reject) => {
//1.配置连接
const conn = mysql.createConnection({
host: "127.0.0.1",//主机名
user: "root",//数据账号
password: "root",//数据库密码
database: "students",//要连接的数据库
charset: "utf8",//编码格式
})
//2.建立连接
conn.connect(err => {
if (!err) {
console.log('链接成功。。。。。');
}
})
//3.执行操作
conn.query(sql, (err, data) => {
if (err) {
console.log('数据库操作失败:', err);
// reject(err)
resolve([err,null])
return
}
resolve([null,data])
})
//4.关闭连接
conn.end();
});
}
module.exports=db;
二、
//完成数据库的封装
const mysql = require('mysql')
//1.配置连接
const conn = mysql.createConnection({
host: "127.0.0.1",//主机名
user: "root",//数据账号
password: "root",//数据库密码
database: "students",//要连接的数据库
charset: "utf8",//编码格式
})
//2.建立连接
conn.connect(err => {
if (!err) {
console.log('链接成功。。。。。');
}
})
function query(sql) {
//3.执行操作
return new Promise((resolve, reject) => {
conn.query(sql, (err, data) => {
if (err) {
console.log('数据库操作失败:', err);
// reject(err)
resolve([err,null])
return
}
resolve([null,data])
})
})
}
//4.关闭连接
// conn.end();
function close(){
conn.end();
}
module.exports = {
query,close
};
三、
const mysql = require('mysql');
const path=require('path');
//数据库操作类
class DB {
constructor(config) {
//配置项
this.config=config;
// this.config = {
// host: "127.0.0.1",//主机名
// user: "root",//数据账号
// password: "root",//数据库密码
// database: "students",//要连接的数据库
// charset: "utf8",//编码格式
// }
this.conn = null;
this.init();
}
//初始化
init() {
this.conn = mysql.createConnection(this.config);//创建数据库连接
this.conn.connect(err => {
if (err) console.log('连接数据库失败:', err);
});
}
//执行数据库操作
operator(sql) {
return new Promise(resolve => {
this.conn.query(sql, (err, rst) => {
err ? resolve([err, null]) : resolve([null, rst])
})
});
}
close() {
this.conn.end();//关闭连接
}
}
let buf=require("node:fs").readFileSync(path.join(__dirname,'..',"config",'config.json'));
// console.log(buf.toString());
let db = new DB(JSON.parse(buf.toString()));
module.exports = db;
//使用
// let db=new DB();
// db.query()