作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
尝试使用节点连接到 MySQL 数据库,但我不断收到以下错误。
类型错误:无法读取未定义的属性“查询”
我相信我已经拥有所需的所有模块和依赖项。
MySQL 连接:
var pool = mysql.createConnection;
var pool = mysql.createConnection({
connectionLimit : 10,
host : 'host',
user : 'username',
password : 'password',
database : 'dbname'
});
错误源于mysql.pool.query:
开始的行app.post('/', function(request, response, mysql) {
var username = request.body.username;
var password = request.body.password;
if (username && password) {
mysql.pool.query('SELECT * FROM accounts WHERE username = ? AND password = ?', [username, password], function(error, results, fields) {
if (results.length > 0) {
request.session.loggedin = true;
request.session.username = username;
response.redirect('/Login_Page_V2');
} else {
response.send('Incorrect Username and/or Password!');
}
});
我已经尝试过另一种代码,但这个会导致错误“length”未定义。
pool.query('SELECT * FROM accounts WHERE username = ? ...
我花了几个小时试图让它工作,但我真的陷入困境,我需要一些帮助。
最佳答案
pool.query('SELECT * FROM Accounts ...
实际上是正确的方法。
错误:“length undefined”来自此条件 results.length > 0
。
您的 IF 语句应如下所示:
结果 && results.length >= 0
这样您就可以确保存在结果(因此也存在元素)并且其长度大于 0。
关于javascript - MySQL 类型错误 : Cannot read property 'query' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58576418/
我是一名优秀的程序员,十分优秀!