MySQL

为 Express 应用添加连接数据库的能力,只需要加载相应数据库的 Node.js 驱动即可。

下载 mysql 模块

$ yarn add mysql

在 js 中引入

const mysql = require('mysql')

使用步骤

  1. 连接
let db = mysql.createConnection({
  host: 'localhost',
  port: 3306,
  user: 'root',
  password: 'root',
  database: 'test'
})

这里有几个参数:

  • host 远程主机
  • prot 端口号,如果为 3306 可省略
  • user 用户名
  • password 密码
  • database 数据库

如果连接主机出问题,会提示:

error:Error: connect ECONNREFUSED 127.0.0.1:3308

如果用户名或密码错误,会提示:

error:Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password: YES)

如果不存在指定数据库,会提示:

error:Error: ER_BAD_DB_ERROR: Unknown database 'user'
  1. 查询

使用 mysql.query(SQL, (err, data) => {}) 可以进行数据库查询:

db.query('select * from user', (err, data) => {
  if (err) {
    console.log('error:' + err)
  } else {
    console.log(data)
  }
})

如果执行成功,返回:

[ RowDataPacket { id: 1, name: 'xiaoyu', password: '123456' },
  RowDataPacket { id: 2, name: 'xiaoqiao', password: '234567' },
  RowDataPacket { id: 3, name: 'xiaoqiang', password: '345678' },
  RowDataPacket { id: 4, name: '', password: '' } ]

实例

比如有如下一个数据库:

数据库链接语句如下:

const mysql = require('mysql')
let db = mysql.createConnection({
  host: 'localhost',
  port: 3306,
  user: 'root',
  password: 'root',
  database: 'test'
})
db.query('select * from user', (err, data) => {
  if (err) {
    console.log('error:' + err)
  } else {
    console.log(data)
  }
})

更多数据库驱动详见: 集成数据库

MIT Licensed | Copyright © 2018-present 滇ICP备16006294号

Design by Quanzaiyu | Power by VuePress