mysql - 学习节点和mysql查询的问题
问题描述
我正在学习节点并且遇到了运行 mysql 查询的问题。我确定我正在连接到 mysql 数据库(因为当我从连接到数据库的同一模块运行查询时,我能够将行打印到控制台日志)。但是,当我需要将数据库连接到我的另一个文件并在查询中使用时,我会收到 500 错误。我在堆栈溢出上花了几个小时,但仍然卡住了。它绝对不是函数,好像我只是返回文本它工作正常,所以它绝对是我使用数据库连接的方式。数据库连接文件如下:
// initialize database connection
const mysql = require('mysql')
var db;
function connectDatabase() {
if (!db) {
db = mysql.createConnection({
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASS,
database: process.env.DB_DATABASE
})
db.connect(function(err){
if(!err) {
console.log('Database is connected!')
} else {
console.log('Error connecting database!')
}
})
}
return db
}
module.exports = connectDatabase()
我们在下面的查询中使用的数据库连接的模块:
const db = require('../db').connectDatabase
exports.getNightlyRatesData = () => {
//const { rows } = db.query('SELECT * FROM rate', function (err, rows) {
db.query('SELECT * FROM rate', function (err, rows) {
if (err) {
console.log("ERROR");
console.log(err);
return;
}
console.log("good");
})
return rows
}
解决方案
推荐阅读
- laravel - Laravel vue 有两种不同的布局
- d3.js - d3js 单向放大,双向平移
- bash - Automator - 在过滤列表中查找和移动最近的文件
- ios - 关于在 Swift 中显示 viewcontroller 时标签栏不可见的问题
- android - 如何知道应用程序中的 *page* 是否使用 React Native(或纯原生)?
- build - Nix:编写一个使用 waf 而不是 make 的包
- javascript - 按钮图片无法点击
- android-studio - 我的模拟器显示了一个更大的状态栏,而不是设计部分中显示的状态栏。我是 android studio 的新手
- javascript - 如何阻止我的网格超出其容器 div?
- php - image-url 中的空格问题