1、先启动MYSQL服务

2、打开navicat for mysql, 点击链接,输入如下的内容:

3、新建数据表

4、数据库(新建一个db.js)

//数据库链接配置
module.exports = {
mysql: {
host : 'localhost',
user : 'root',
password : '', //你的密码
database : 'test001' //你的数据库
}
}

5、sql函数(新建一个sqlfun.js)

//sql语句
var sqlMap = {
user: {
login: 'select * from admin where username = ?',
add: 'insert into admin (username,userpsw) values (?,?)'
}
}
module.exports = sqlMap;

6、建立api接口

var URL = require('url'); //获取url参数 依赖于url模块 使用前需要使用 require('url')
var express = require('express');
var router = express.Router();
var models = require('../db');//数据库链接信息
var mysql = require('mysql');
var $sql = require('../sqlfun');//sql语句 //链接数据库
var conn = mysql.createConnection(models.mysql);
conn.connect(); router.post('/login', function(req, res){
var sql = $sql.user.login;
var params = req.body;
conn.query(sql, params.username,function(err, result){
if(err){
console.log(err);
return;
}
if(result){
if(result.length !=){
for(var i = ; i < result.length;i++){
// console.log('请求回来!',result[i]);
if(result[i].userpsw == params.userpsw){
res.send({
code: '',
msg: '登录成功'
})
}else{
res.send({
code: '',
msg: '密码错误'
})
}
}
}else{
res.send({
code: '',
msg: '不存在此用户'
})
} }
})
}) router.post('/addUser',function(req, res){
var sql = $sql.user.add;
var params = req.body;
console.log([params.username, params.userpsw]);
conn.query(sql, [params.username,params.userpsw], function(err, result){
if(err){
console.log(err);
return;
}
res.send({
code: '',
msg: '注册成功'
}) })
}) module.exports = router;

7、测试页面

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<form action="http://localhost:3000/admin/login" method="POST">
First Name: <input type="text" name="username"/><br />
Password: <input type="text" name="userpsw"/>
<input type="submit" value="登录"/>
</form> <br /><br /><br />
<form action="http://localhost:3000/admin/addUser" method="POST">
First Name: <input type="text" name="username"/><br />
Password: <input type="text" name="userpsw"/>
<input type="submit" value="注册新用户"/>
</form> </body>
</html>

参考文章:

使用 Node.js + Express 开发服务端

Navicat for MySQL新建表

vue+node+mySql实现前后端分离

使用navicat for mysql图形界面操作数据库、使用node.js操作数据库写接口的更多相关文章

  1. node.js操作MySQL数据库

    MySQL数据库作为最流行的开源数据库.基本上是每个web开发者必须要掌握的数据库程序之一了. 基本使用 node.js上,最受欢迎的mysql包就是mysql模块. npm install mysq ...

  2. 学习笔记之--MySQL图形界面软件Navicat Premium的安装

    最近因项目开发需要,搁置已久的MySQL再次用到.由于以前都是使用命令行进行操作的,没有图形界面.经同学介绍,安装了一个MySQL的图形界面软件.各种数据库的操作也变得直观方便了很多.现在记录下来,一 ...

  3. ubuntu16安装mysql图形界面

    之前在windows用sqlyog当做图形界面连接mysql,现在在ubuntu上需要连接测试环境的数据库,需要安装mysql图形界面.安装只需要条命令: sudo apt-get update su ...

  4. 使用node js 操作 Mysql 数据库

    使用node js 操作 Mysql 数据库 http://www.nodejs.org/ //node js 数据库操作 MySQL //使用https://github.com/felixge/n ...

  5. [Node.js]操作mysql

    摘要 上篇文章介绍了node.js操作redis的简单实例,这里介绍如何操作mysql. 安装 安装mysql模块 cnpm install mysql 一个例子 新建一个mysql.js的文件,代码 ...

  6. node.js操作数据库之MongoDB+mongoose篇

    前言 node.js的出现,使得用前端语法(javascript)开发后台服务成为可能,越来越多的前端因此因此接触后端,甚至转向全栈发展.后端开发少不了数据库的操作.MongoDB是一个基于分布式文件 ...

  7. node.js零基础详细教程(7):node.js操作mongodb,及操作方法的封装

    第七章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑. ...

  8. [Node.js与数据库]node-mysql 模块介绍

    [Node.js与数据库]node-mysql 模块介绍   转载至:https://itbilu.com/nodejs/npm/NyPG8LhlW.html#multiple-statement-q ...

  9. Node.js 操作Mongodb

    Node.js 操作Mongodb1.简介官网英文文档  https://docs.mongodb.com/manual/  这里几乎什么都有了MongoDB is open-source docum ...

随机推荐

  1. 关于for循环的一个小问题

    有如下程序: package com.lk.B; public class Test5 { public static void main(String[] args) { // TODO Auto- ...

  2. keys()

    keys():返回一个数组,里面是符合匹配模式的键列表 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); $pattern = ...

  3. 对C#泛型讲的很好的一篇文章

    请参考 https://www.cnblogs.com/kissdodog/archive/2013/01/27/2879185.html

  4. AutoLayout自动布局,NSLayoutConstraint 视图约束使用

    一.方法 NSLayoutConstraint *constraint = [NSLayoutConstraint constraintWithItem:<#(id)#> attribut ...

  5. APUE(3)---文件I/O (1)

    一.引言 UNIX系统中的大多数文件对I/O只需用到5个函数:open/read/write/lseek和close,这些函数都是不带缓冲I/O(Unbuffered I/O).只要涉及到多个进程间共 ...

  6. JS Img对象获取图片高度宽度(兼容Chrome)

    一般获取图片高度宽度的写法: var img = new Image();img.src = imgsrc;var imgWH = CalcImgTiple(img.width, img.height ...

  7. wp8扩展器大全

    <Extensions> <!--扩展照片中心--> <Extension ExtensionName="Photos_Extra_Hub" Cons ...

  8. 一个简单的tcp代理实现

    There are a number of reasons to have a TCP proxy in your tool belt, bothfor forwarding traffic to b ...

  9. 严选 Android 路由框架优化(上篇)

    0 背景 早前严选 Android 工程,使用原生 Intent 方式做页面跳转,为规范参数传递,做了编码规范,使用静态方法的方式唤起 Activity public static void star ...

  10. 857. Minimum Cost to Hire K Workers

    There are N workers.  The i-th worker has a quality[i] and a minimum wage expectation wage[i]. Now w ...