无法从我的 mySQL 数据库接收信息,尽管已经看到教程做了完全相同的事情
P粉757640504
P粉757640504 2024-04-03 14:46:04
0
1
462

所以我正在尝试制作一个读取和写入 MySQL 数据库的程序,这让我找到了 YouTube 教程。我的问题是,尽管经历了与教程中的人完全相同的过程,但我最终得到了一个空服务器,尽管应该弹出什么内容。我的代码如下,它应该抓取我的申请人数据库中的applicant_info表中的每个条目,并将其显示在localhost:3000浏览器上。相反,它什么也不显示,我猜测是因为它无法获取信息,但我不知道为什么会出现这种情况,我已经严格按照教程进行操作。

const express = require("express");
const mysql = require('mysql');

const connection = mysql.createConnection({
        host    : 'localhost',
        user    : 'root',
        password: 'password',
        database: 'applicants'
});

const app = express();

app.get('/', (req, res) => {
    let sql = "SELECT * FROM applicant_info";
    connection.query(sql, (err, results) =>{
        res.send(results);
    })
});

app.listen('3000', () => {
    console.log('Server running on port 3000');
    connection.connect((err) => {
        if(err) {
        };
        console.log('Database Connected!');
    })
});

关于代码的旁注是,由于某种原因,我无法使用“throw”命令运行它,这就是“err”if 语句当前为空的原因。我希望亲爱的上帝,这不是原因,因为我不知道如何解决它。

这是我从浏览器收到的图片:图像描述

P粉757640504
P粉757640504

全部回复(1)
P粉204136428

您的要求有问题:

Error: Cannot find module 'mySQL'

应该是:

const mysql = require('mysql');

因此您的服务器无法运行,并且浏览器上出现 404 错误。

修复后,启动您的服务器,
你应该在控制台中看到这个:

Server running on port 3000
Database Connected!

访问 http://localhost:3000 时您应该会看到您的数据

编辑:

为您的代码添加了更多调试:

app.get('/', (req, res) => {
    console.log('get called');
    let sql = "SELECT * FROM applicant_info";
    connection.query(sql, (err, results) =>{
        res.send(results);
    })
});

app.listen('3000', () => {
    connection.connect((err) => {
        if(err) {
          console.log('Database not connected!');
          console.log(err)
        } else {
          console.log('Server running on port 3000');
          console.log('Database Connected!');
        }
    })
});
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板