图文并茂Windows系统使用XAMPP搭建本地mysql数据库导入数据库并使用node.js访问数据库

点击下载XAMPP

在这里插入图片描述

点击启动Apache和Mysql

在这里插入图片描述

如果出现这种报错,修改配置文件,一般出现这种情况是因为端口占用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

再次尝试START, 成功啦~~

在这里插入图片描述

接下来我们准备一份写好的SQL 文件

在这里插入图片描述

输入如下命令,回车

mysql -u root -p

初始是没有密码的,继续回车,开始导入数据库

source 你的文件路径(可以直接拖进去自动识别路径)

在这里插入图片描述

导入成功~~

查看导入结果

备注,如果你打开的是80端口,就需要重启一下这个XAMPP软件哦,或者是你直接手动localhost后加上你刚刚定义的端口号

在这里插入图片描述
在这里插入图片描述

导入成功~~

代码开始链接数据库--

下面是node.js代码示例

app.js

// 新版本接口服务
const express = require('express');
const session = require('express-session')
var MySQLStore = require('express-mysql-session')(session);

var options = {
    host: 'localhost',
    port: 3306,
    user: 'root',
    // password: '',
    database: 'cake'
};
var sessionStore = new MySQLStore(options);

//引入路由模块
const cors = require('cors');
const index = require('./routers/index');

//创建web服务器
var server = express();


//托管静态资源到public下;
server.use(express.static('public'));
//跨域请求cors
server.use(cors({
    origin: "*",
    credentials: true
}));

// server.writeHead(200,{"Access-Control-Allow-Credentials":true});
server.use(express.json())
server.use(express.urlencoded({
    extended: false
}));

//session 启用会话中间件,用来保存用户登录状态以及验证码
server.use(session({
    name: 'sessioqqqqqq',
    resave: true,
    saveUninitialized: true,
    secret: 'APP_SESSION_SECRET',
    store: sessionStore // 将会话存到数据库
}))

server.use('/index', index);

server.use((req, res, next) => {
    res.status(404).send('404 not found')
})

// 异常处理器
server.use((req, res, next, err) => {
    console.log('req', req)
    console.log('res', res)
    console.log('next', next)
    console.log(next)
    console.log('err', err)
        // res.send(500);
})

server.listen(3000);
console.log('啟動啦3000')

index.js

const express = require("express");
const router = express.Router();
const pool = require("../pool");

router.get("/", (req, res) => {
    console.log('调用了我这个接口---------------index')
    var status = req.query.status;
    var output = {
        product: {}
    }
    if (status !== undefined) {
        var sql1 = `select * from cake_index_product where index_status=?`;
        pool.query(sql1, [status], (err, result) => {
            if (err) console.log(err);
            output.product = result;
            // console.log(output);
            // console.log("haha1");
            res.send(output);
        })

    } else {
        res.send(output);
        console.log(444)
    }
})

module.exports = router;

命令行运行

node app.js

浏览器访问 http://localhost:3000/index?status=1

在这里插入图片描述

至此,大功告成~~

在这里插入图片描述

原文地址:https://www.cnblogs.com/sugartang/p/15579736.html