node 项目建立 MySQL配置起始
初始化一个包记录项目文件
npm init -y
建立一个MySQL包
npm i mysql
配置mysql模块
// 导入数据库模块
const mysql = require('mysql')
// 配置应用数据库
const db = mysql.createPool({
host: '127.0.0.1',//数据库ip
user: 'root',//数据库账号
password: 'admin123',//数据库密码
database: 'node_demo_db'//数据库名
})
// ----------------------------------
// 检测mysql模块能否正常工作
// SELECT 1没有任何作用,只是检测数据库能否正常工作
// db.query('SELECT 1', (err,results)=>{
// // mysql工作期间是否保存
// if(err)return console.log(err.message);
// // 成功则执行
// // 注意,如果执行的是select查询语句,返回的则是数组
// console.log(results);
// })
// ------------------------------------
// 查询users表中所有的数据
// const sqlselect = 'select * from users'
// db.query(sqlselect,(err,results)=>{
// if(err)return console.log(err.message);
// console.log(results);
// })
// ------------------------------------
// 往表内新增数据第一种方法
// const user = {usename:'admin',password:'admin'}
// // 定义待执行的sql语句
// const sqlStr = 'insert into users(usename,password)values(?,?)'
// 执行sql语句
// db.query(sqlStr,[user.usename,user.password],(err,results)=>{
// // 失败返回
// if(err)return console.log(err.message);
// // 成功返回
// if(results.affectedRows ===1){
// console.log('插入数据成功');
// }
// })
// 往表内新增数据第二种方法(语句简化)
// const user = {usename:'admin123',password:'admin123'}
// // 定义待执行的sql语句
// const sqlStr = 'insert into users set ?'
// // 执行sql语句
// db.query(sqlStr,user,(err,results)=>{
// // 失败返回
// if(err)return console.log(err.message);
// // 成功返回
// if(results.affectedRows ===1){
// console.log('插入数据成功');
// }
// })
// ------------------------------------
// 更新数据第一种方法
// 更新用户信息
// const user = {id:8,usename:'root',password:'root1'}
// // 定义sql语句
// const sqlUpdate = 'update users set usename=?,password=?where id=?'
// // 执行sql语句
// db.query(sqlUpdate,[user.usename,user.password,user.id],(err,res)=>{
// // 失败
// if(err)return console.log(err.message);
// // 成功 注意:执行了update语句后,执行的结果可以是一个对象,可以通过affectedRows判断是否更新成功
// if(res.affectedRows === 1){
// console.log('更新成功');
// }
// })
// 更新数据第二种方法
// 更新用户信息
// const user = {id:8,usename:'root',password:'root'}
// // 定义sql语句(简化语句)
// const sqlUpdate = 'update users set ? where id=?'
// // 执行sql语句(简化执行内容语句)
// db.query(sqlUpdate,[user,user.id],(err,res)=>{
// // 失败
// if(err)return console.log(err.message);
// // 成功
// if(res.affectedRows === 1){
// console.log('更新成功');
// }
// })
// ------------------------------------
// 删除数据id为7的用户
// const sqldelete = 'delete from users where id=?'
// // db.query有多个占位符的时候必须使用数组
// // 单个时可省略
// db.query(sqldelete, 7, (err, res) => {
// // 失败
// if (err) return console.log(err.message);
// // 成功 注意:执行delete语句后,结果也是一个对象,也会包含affectedRows属性
// if (res.affectedRows === 1) {
// console.log('删除成功');
// }
// })
// 执行delete语句时会真正的删除数据,为了保险起见,都会使用标记删除的方式模拟删除的动作
// 标记删除:在表内更新设置status注意的状态字段,标记改数据是否删除
// 执行标记删除时,状态更新为删除状态
// const sqlstatus = 'update users set status = ? where id =?'
// // 第一个值是状态码,第二个值是对应上方的sql语句
// db.query(sqlstatus,[1,8],(err,res)=>{
// if(err)return console.log(err.message);
// if(res.affectedRows){
// console.log('标记删除');
// }
// })
代码改变了我们,也改变了世界

浙公网安备 33010602011771号