这个教程不管node,express,koa都可以用下面方法连接,这里用koa做个参考

这个教程的源码地址: https://github.com/xiaqijian/...

新建文件目录,我是这样子的

很多教程都没有涉及到版本,所以让很多初学者,拷贝他的代码,出现错误问题
我的版本:

 "dependencies": {
"koa": "^2.6.2",
"mysql": "^2.16.0"
}

1.设置配置文件

// default.js
// 设置配置文件
const config = {
// 启动端口
port: 3000, // 数据库配置
database: {
DATABASE: 'ceshi',
USERNAME: 'root',
PASSWORD: '1234',
PORT: '3306',
HOST: 'localhost'
}
} module.exports = config

2.连接数据库

// mysql/index.js

var mysql = require('mysql');
var config = require('../config/default.js') var pool = mysql.createPool({
host : config.database.HOST,
user : config.database.USERNAME,
password : config.database.PASSWORD,
database : config.database.DATABASE
}); class Mysql {
constructor () { }
query () {
return new Promise((resolve, reject) => {
pool.query('SELECT * from ceshidata', function (error, results, fields) {
if (error) {
throw error
};
resolve(results)
// console.log('The solution is: ', results[0].solution);
});
}) }
} module.exports = new Mysql()

3.设置服务器

// index.js
const Koa = require('koa')
const config = require('./config/default')
const mysql = require('./mysql') const app = new Koa() app.use(async (ctx) => {
let data = await mysql.query()
ctx.body = {
"code": 1,
"data": data,
"mesg": 'ok'
} }) app.listen(config.port) console.log(`listening on port ${config.port}`)

4.启动服务器,去浏览器访问

先去数据库添加点数据

node index.js

打开浏览器localhost:3000, 然后你就会看到以下数据,自己添加的数据查询出来了

然后其他相关操作,可以看mysql相关API,我下次也会分享出来

首发于微信公众号:node前端

不妨关注一下,我们一起学习

回复:100

有福利哦

原文地址:https://segmentfault.com/a/1190000017026367

koa,express,node 通用方法连接MySQL的更多相关文章

  1. Node.js:连接 MySQL

    ylbtech-Node.js:连接 MySQL 1.返回顶部 1. Node.js 连接 MySQL 本章节我们将为大家介绍如何使用 Node.js 来连接 MySQL,并对数据库进行操作. 如果你 ...

  2. C# 3种方法连接MySql

    转   http://wenku.baidu.com/view/d0cf34708e9951e79b8927c7.html C# 连接MYSQL数据库的方法及示例 连接MYSQL数据库的方法及示例 方 ...

  3. 两种方法连接MySql数据库

    .用MySQLDriverCS连接MySQL数据库 先下载和安装MySQLDriverCS,在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中. ...

  4. node.js(连接mysql)

    mysql语句中的SQL sql语句中的分类: ---DDL:(data define language)定义数据列(create,drop,alter,truncate) ---DML:(data ...

  5. Node.js连接MySQL数据库报错

    解决Node.js第一次连接MySQL数据库时出现[SELECT ERROR] - ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authen ...

  6. Node.js连接Mysql,并把连接集成进Express中间件中

    引言 在node.js连接mysql的过程,我们通常有两种连接方法,普通连接和连接池. 这两种方法较为常见,当我们使用express框架时还会选择使用中间express-myconnection,可以 ...

  7. Node.js Express连接mysql完整的登陆注册系统(windows)

    windows学习环境: node 版本: v0.10.35 express版本:4.10.0 mysql版本:5.6.21-log 第一部分:安装node .Express(win8系统 需要&qu ...

  8. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  9. node.js利用express连接mysql数据库

    我们创建一个mysql.js (好像大神们,称呼这叫一个模块,然后暴露一个接口)用来连接数据库 var connction ={}; connction.mysql = { host:"lo ...

随机推荐

  1. 基于vue的可视化编辑器

     https://github.com/jaweii/Vue-Layout  https://github.com/L-Chris/vue-design  https://github.com/fir ...

  2. jQuery练习总结(二)

    --------------------------------------- <!DOCTYPE html> <!DOCTYPE HTML PUBLIC "-//W3C/ ...

  3. Oracle 高水位(HWM: High Water Mark)

    http://blog.itpub.net/31397003/viewspace-2137246/ http://blog.itpub.net/12778571/viewspace-582695/ h ...

  4. 工具-Telerik trial安装图解

  5. 洛谷 P1131 [ZJOI2007]时态同步

    P1131 [ZJOI2007]时态同步   题目描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3….进行标号.电路板的各个节点由若干 ...

  6. hrift does not support polymorphic data types

    hrift does not support polymorphic data types Exception in thread "main" com.facebook.swif ...

  7. Android Cursor浅析

    1. 本文目的 Android ContentProvider提供了进程间数据交换的一种机制.而数据库的查询就是这样的机制的应用.那么app通过Uri查询数据库而得到的Cursor到底是个什么东西?为 ...

  8. Codeforces Round #284 (Div. 1) B. Name That Tune(概率DP)(难)

    B. Name That Tune time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  9. Agile实践日志一 -- Grooming Session

    Agile实践日志一  -- Grooming Session GroomingSession 这个Session主要Go through我们下一个Sprint须要做的Story,大家都清楚之后,在每 ...

  10. j-link修复 write flash 一直无法点击

    write flash 一直无法点击 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMTcyNDI5NTc=/font/5a6L5L2T/fonts ...