mysql 数据路由_node-路由操作mysql数据库
node大部分方法都是异步的,在操作数据库方法后面紧接着输出结果,输出的结果只会为空值,使用promise及其方便的解决这个问题,接下来看看node如何使用路由来处理不同请求,进而操作mysql数据库
一、引入相关依赖
node中默认没有mysql,需要使用npm i mysql指令进行安装
const http = require('http');
const url = require('url');
const queryStr = require('querystring');
var mysql = require('mysql');
二、连接mysql数据库
配置本地mysqli数据库相关参数
var connection = mysql.createConnection({
host: 'localhost',*
user: 'root',*
password: '你的数据库密码',
*database: 'xxxx'
});
connection.connect();
三、使用promise async,await封装处理异步问题的函数
// Promise async,await解决异步问题
function fn(sql, data = []) {
return new Promise((success) => {
connection.query(sql, data, function (error, results) {
if (!error) {
success(results)
}
});
})
}
四、node启动服务
通过判断请求路径来给与请求不同的响应,调用promise处理异步问题
var obj = {};*
http.createServer(async (req, res) => {
res.writeHead(200, {*
'Content-Type': 'text/html; charset=utf-8'
});
// 解析请求路径以及参数
const { pathname, query } = url.parse(req.url);
if (pathname != '/favicon.ico') {*
switch (pathname) {
case '/':
var sql = "select * from user";
var result = await fn(sql);
obj = {
code: 1,
data: result
}
break;
case '/list':*
var data = queryStr.parse(query).tel;
console.log(data);*
*var sql = `select * from user where tel =${data}`;
var result = await fn(sql);
console.log(result);
obj = {
code: 2,
data: result
}*
break;
}
}
res.end(JSON.stringify(obj));
}).listen(10086)
console.log('http:localhost:10086');
mysql 数据路由_node-路由操作mysql数据库相关推荐
- perl mysql 数据推拉_Perl操作Mysql数据库
1. CGI变量简介 如果你在以前使用过传统的CGI,你应该对"CGI变量"的概念很熟悉. 由这些变量可以取得一些和请求(Request)有关的信息.其中一些来自于 HTTP 请求 ...
- perl mysql 数据推拉_MySQL_Perl操作mysql数据库的方法,Perl对Mysql的操作。
一、标准 - phpStudy...
Perl对Mysql的操作. 一.标准操作 1.连接.关闭 my $dbh = DBI->connect("DBI:mysql:database=DBname;host=localho ...
- 关于Ubuntu 16.04系统挂载硬盘以及迁移MYSQL数据存储目录的操作步骤
转载链接 : 关于Ubuntu 16.04系统挂载硬盘以及迁移MYSQL数据存储目录的操作步骤 :https://www.jianshu.com/p/58093888ee25 本文背景: 现有项目系统 ...
- MySql数据库主键外键与数据库设计
MySql数据库主键外键与数据库设计 首先要指出的: 列.字段.属性是一个概念 行.记录.元组是一个概念 MySQL数据库CONSTRAINT约束:非空约束,唯一约束,主键约束,外键约束 show c ...
- .NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper
.NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper 參考演示样例代码,例如以下所看到的: /// <summary>/// MySql 数 ...
- js修改mysql数据库数据_Node.js操作mysql数据库增删改查
关于node.js操作mysql数据库的相关介绍请阅读全文吧.下文介绍的非常详细,具体内容如下所示: 安装mysql模块 npm install mysql 数据库准备 mysql server所在的 ...
- qt 不显示 mysql 数据表中的内容_qt 数据库操作总结
整理一下 QT 操作数据库的一些要点,以备以后的查询学习(主要是操作 mysql ). 转载于:https://www.cnblogs.com/lsgxeva/p/7852102.html 首先,要查 ...
- python mysql批量insert数据、返回id_Python3 操作 MySQL 插入一条数据并返回主键 id的实例...
Python 中貌似并没有直接返回插入数据 id 的操作(反正我是没找到),但是我们可以变通一下,找到最新插入的数据 #!/usr/bin/env python3 # -*- coding: UTF- ...
- PHP访问mysql的常用函数,PHP操作MySQL数据库常用函数
PHP操作MySQL数据库常用函数 php操作mysql数据库,俗称天龙八步: 第一步:连接数据库 第二步:判断连接错误 第三步:选择数据库 第四步:设置字符集 第五步:准备SQL语句 第六步:执行并 ...
最新文章
- Leetcode 4.28 Tree Easy
- find命令应用详解
- visual basic6.0企业版
- 关于element click intercepted报错解决办法
- 在vue单页应用中使用jquery
- drbd(三):drbd的状态说明
- 2017 最值得关注的十大 APP、Web 界面设计趋势
- c linux time微秒_Linux基础知识(Linux系统、Linux中的链表)
- 设计模式快速学习(五)原型模式
- 循环执行次数 n(n+1)/2
- 析砂性土层php泥浆护壁,砂卵石层钻探护壁工艺分析
- 批量替换_【脚本】AE照片墙模板图片批量替换脚本Multi Replacer
- 快速解决Git最常见问题
- ENVI入门系列教程---一、数据预处理---7.图像镶嵌
- 2602 最短路径问题
- JavaScript 学习笔记4
- excel删除行闪退_xp系统打开excel表格就闪退怎么回事_xp打开excel表格闪退如何解决...
- 聚类算法-密度聚类算法DBSCAN
- 11-TensorFlow 基于ResNet的轴承故障诊断
- 互联网最新创新创业项目