koa,express,node 通用方法连接MySQL
这个教程不管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的更多相关文章
- Node.js:连接 MySQL
ylbtech-Node.js:连接 MySQL 1.返回顶部 1. Node.js 连接 MySQL 本章节我们将为大家介绍如何使用 Node.js 来连接 MySQL,并对数据库进行操作. 如果你 ...
- C# 3种方法连接MySql
转 http://wenku.baidu.com/view/d0cf34708e9951e79b8927c7.html C# 连接MYSQL数据库的方法及示例 连接MYSQL数据库的方法及示例 方 ...
- 两种方法连接MySql数据库
.用MySQLDriverCS连接MySQL数据库 先下载和安装MySQLDriverCS,在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中. ...
- node.js(连接mysql)
mysql语句中的SQL sql语句中的分类: ---DDL:(data define language)定义数据列(create,drop,alter,truncate) ---DML:(data ...
- Node.js连接MySQL数据库报错
解决Node.js第一次连接MySQL数据库时出现[SELECT ERROR] - ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authen ...
- Node.js连接Mysql,并把连接集成进Express中间件中
引言 在node.js连接mysql的过程,我们通常有两种连接方法,普通连接和连接池. 这两种方法较为常见,当我们使用express框架时还会选择使用中间express-myconnection,可以 ...
- Node.js Express连接mysql完整的登陆注册系统(windows)
windows学习环境: node 版本: v0.10.35 express版本:4.10.0 mysql版本:5.6.21-log 第一部分:安装node .Express(win8系统 需要&qu ...
- Java连接MySQL数据库增删改查通用方法
版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...
- node.js利用express连接mysql数据库
我们创建一个mysql.js (好像大神们,称呼这叫一个模块,然后暴露一个接口)用来连接数据库 var connction ={}; connction.mysql = { host:"lo ...
随机推荐
- prim求最小生成树
一直以来只会Kruskal prim和dijkstra很像 只不过prim维护的是最短的边,而dijkstra维护的是最短的从起点到一个点的路径 同时prim要注意当前拓展的边是没有拓展过的 可以用堆 ...
- C# List源码分析(一)
事件原因,之前在公司写代码的时候,带我的师傅建议我对List的长度最好在初始化的时候进行优化,这样对GC更加友好,所以就有了这个文章,来理解下List 容量自适应的实现. List 继承于IList, ...
- tf.truncated_normal和tf.random_normal使用方法的区别
1.tf.truncated_normal使用方法 tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=No ...
- VS2015 C#取消最大化按钮,设置鼠标不可调整窗体大小
取消最大化按钮设置 设置窗体不可被鼠标调整大小
- Civil3D二次开发常见问题总结
Civil3D二次开发常见问题总结 AutoCAD命令提示"未知命令**--"的原因:在Initialize方法内报出异常就会导致这种情况.O__O"-(或是少加了dll ...
- Activiti 各个节点涉及的表
################################# 部署流程定义涉及到的表 # 流程部署表SELECT * FROM `act_re_deployment` # 流程定义表SELECT ...
- [ES6] Proxy & Reflect
Proxy and Reflect API works nicely together. About how to use Proxy, check this post. Let's see abou ...
- Tom和Jerry来了,Tom和Jerry走了——北漂18年(38)
上次讲到跟我同一时候入职的女销售走了. 回忆起来,她的问题多半是技巧足够,脑子不足够,走了之后再没联系.不久之后,在老板的要求之下.LilyG又招聘了两位男销售,英文名字非常登对一个叫Tom,一个叫J ...
- XTU1202:逆序数
题目描写叙述 有n张卡片,分别标有数字1~n. 有一天Silence把他们按某种序列排好.然后从第一张開始取出一张,再拿一张放到最后面.再取出一张,再拿出一张放到最后面...知道n张卡片所有取走. 把 ...
- Java 后台性能优化简要
业务系统性能优化的前提时观察和诊断.观察工具例如以下:前端优化工具:YSlow页面响应时间:Firebug方法对应时间:btraceGC日志分析:JVM 启动參数数据库优化:慢查询系统资源调用:监控 ...