前端攻城狮---node之数据库

为了后面我们的单页面图书管理系统能够正常编写,我们先来了解一下node与mysql之间的连接和操作。

首先准备工作,下载mysql 和 npm install mysql,接下来配置mysql

配置mysql

/*
  插入数据库
*/
// 加载数据库驱动
var mysql   = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '123456',
  database : 'mybook'
});

// 执行连接数据库
connection.connect();

let sql = "insert into book set ?";
let data = {
    name: "西藏生死书",
    author: "郑振煌",
    category:"宗教",
    description: "谈论生死观"
}
// 操作数据库
connection.query(sql, data, function (error, results, fields) {
  if (error) throw error;
  //console.log(results.affectedRows);
  if(results.affectedRows>0) {
      console.log("插入成功");
  }
});

// 关闭数据库
connection.end();
  • 第一步 当然是先引用第三方插件
  • 第二步 创建连接,填入数据库相关信息(主机名 用户 密码 数据库)
  • 第三步 去连接数据库
  • 第四步 操作数据库。通过query去对数据库进行操作,第一个参数是sql语句,第二个参数是数据,第三个则是回调
  • 第五步 关闭数据库

这样子,我们就可以将上述代码封装成一个通过的数据库的js

/*
  封装操作数据库的通用api
*/
// 加载数据库驱动
// 更新数据
var mysql   = require('mysql');

exports.base = (sql,data,callback)=>{
    var connection = mysql.createConnection({
        host     : 'localhost',
        user     : 'root',
        password : '123456',
        database : 'mybook'
      });
      
      // 执行连接数据库
      connection.connect();
      // 操作数据库
      connection.query(sql, data, function(error, results, fields) {
        if (error) throw error;
        callback(results);
      });
      
      // 关闭数据库
      connection.end();      
}

很显然,我们的数据库是mybook。接下来我们来讲解一下数据库的增删查改,首先我们新建了一个表,表的内容有name author category description。

添加数据

const db = require("./db.js");
let sql = "insert into book set ?";
let data = {
    name: "西藏生死书",
    author: "郑振煌",
    category:"宗教",
    description: "谈论生死观"
}
db.base(sql,data,(result)=>{
   console.log(result);
});

删除数据

const db = require("./db.js");
let sql = "delete from book where id=?";
let data = [2];
db.base(sql,data,(result)=>{
   console.log(result);
});

修改数据

const db = require("./db.js");
let sql = "update book set name=?,author=?,category=?,description=? where id=?";
let data = ["活法","稻盛和夫","哲学","阐述人生的真理、生活的意义、人生应有的状态",3]
db.base(sql,data,(result)=>{
   console.log(result);
});

查找数据

const db = require("./db.js");
let sql = "select * from book where name= ?";
let data = ["活法"]; 
db.base(sql,data,(result)=>{
   console.log(result);
});

注意的是data里面的数据要和sql语句传入的数据一一对应。

其实数据库内容不多,接下来会编写小项目---图书管理系统,如有表达错的请谅解,并请提出指出,且修改错误,望能共同进步。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值