问题标签 [node-mysql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 在 Node.js 中解密 MySQL 的 AES_ENCRYPT
我在将 AES 解密用于缓冲区对象时遇到问题,我希望有人知道我做错了什么......
MyExample:我有一个带有 AES_ENCRYPT 用户名和密码的 MySQL 表...
Node.JS:我正在使用 node-mysql 模块向我的数据发送查询:
为密码和用户名返回此类值:
如何使用 Node.JS 解密方法对其进行解码?我的尝试都失败了...我希望正确选择 AES-128-ECB...
要解读 Node.JS 中的某些内容,应该如下所示:
感谢所有帮助:)
javascript - 如何使用 node-mysql / node.js 一次获取一行?
我有一些 PHP 代码需要移植到 node.js / Javascript,但我不知道如何正确执行此操作:一次只获取一行。
我有一个查询会产生一个 MASSIVE 数据集;我只需要一些结果;但我不知道有多少。
在 PHP 中,我只执行查询,然后每行获取行,直到满足条件。php伪代码:
我看不到如何在 node-mysql 中做到这一点。我可以在 sql 查询中添加一个 LIMIT 1 并每次进行一个新查询,但是我如何获得有序列表中的下一行?任何提示将不胜感激。
如果有帮助,这是实际代码:
javascript - 使用 app.get(..) 路由后 Express JS 'this' 未定义
我有一个基本的 Node JS 服务器,它被设计用作 API,我创建了一个日志和数据库模块,并开始添加其他模块来处理不同的请求类型。
我正在使用 Express.js 和 node-mysql
当我访问时,/v1/group
我收到以下错误 -
所以我想在收到一个请求并调用group.getAll()
未定义this
但我不明白为什么之后,有没有办法设置this
或我的应用程序结构都错了?
服务器.js
数据库.js
组.js
node.js - Express3 JS - 在路由中访问和设置会话数据
我正在尝试在 node-mysql 查询回调中访问 nodejs 服务器会话变量,但我似乎无法访问或设置 req.session 中的任何变量。
正如您在上面看到的,我正在尝试将名字和姓氏添加到会话中作为测试,以查看会话是否正常工作,但这最终将成为身份验证系统的一部分。
实现这一目标的最佳方法是什么。我错过了一些重要的中间件吗?
编辑:这是 routes.login_process 中的完整代码
这是从发布到 /login 的表单发布的
mysql - Node.js mysql 事务
谁能提供我如何在 Node.js 中实现 MySQL 事务的示例。我正在尝试使用 node-mysql 驱动程序和 node-mysql-queue。
据我所知,使用 node-mysql-queue 大大降低了 Node.js 的异步特性,因为新查询必须等到现有查询完成。为了解决这个问题,有没有人尝试将 node-mysql-queue 与 node-mysql 的连接池功能结合起来。即为每个新的http请求启动一个新的mysql连接,并在单个连接上启动事务队列?
javascript - 防止 Node.js 中的 SQL 注入
是否有可能以与 PHP 具有防范它们的 Prepared Statements 相同的方式防止 Node.js 中的 SQL 注入(最好使用模块)。
如果是这样,怎么做?如果没有,有哪些示例可能会绕过我提供的代码(见下文)。
一些背景:
我正在使用node-mysql模块制作一个由 Node.js + MySql 组成的后端堆栈的 Web 应用程序。从可用性的角度来看,这个模块很棒,但是它还没有实现类似于 PHP 的Prepared Statements的东西(尽管我知道它在todo上)。
据我了解,PHP 对预准备语句的实现等对防止 SQL 注入有很大帮助。不过,我担心我的 node.js 应用程序可能会受到类似的攻击,即使默认提供了字符串转义(如下面的代码片段所示)。
node-mysql 似乎是 node.js 最流行的 mysql 连接器,所以我想知道其他人可能会做什么(如果有的话)来解决这个问题 - 或者它是否甚至是 node.js 开始的问题(不知道这是怎么回事,因为涉及到用户/客户端输入)。
我是否应该暂时切换到node-mysql-native,因为它确实提供了准备好的语句?我对此犹豫不决,因为它似乎不像 node-mysql 那样活跃(尽管这可能只是意味着它已经完成)。
这是一段用户注册代码,它使用了sanitizer模块,以及 node-mysql 准备好的语句式语法(正如我上面提到的,它会进行字符转义),分别防止跨站点脚本和 sql 注入:
mysql - 加快 MySQL 中大量多查询语句的性能
我有 node.js 脚本,它在服务器上作为 cron 作业运行。
它异步接收来自外部源的数据(几个同步请求)并使用多个查询语句更新数据库,其中 UPDATE 查询用分号分隔。
一个 8000-UPDATES 多查询运行大约 55 秒。
有没有办法以某种方式加快整个数据库更新过程?
单个查询非常简单——比如
索引是为id字段创建的。
mysql - ENOENT 与 nodejs mysql 和续集
我已经为此苦苦挣扎了几天,无法弄清楚出了什么问题。
我在用:
当我尝试执行任何查询时,我会在其中某处收到一条带有 ENOENT 的错误消息。根据我的研究,这似乎是文件系统问题的通用节点错误消息,例如文件不存在或权限不足。我已检查并且我的凭据是正确的。所以,我的创建语句失败,然后当我的应用程序去查询数据库时,没有表存在,我得到类似的东西:
什么类型的事情通常会导致这种情况?非常感谢。
javascript - Node.js 和 mysql 回调:查询回调中的查询
如果我的数据库没有,我想做的就是插入一些数据,所以我将插入 SQL 放入我的 Select SQL 的回调函数中,但我得到了这样的错误:
{ [错误:调用退出后无法排队查询。] 代码:'PROTOCOL_ENQUEUE_AFTER_QUIT',致命:false }
我的代码片段在这里:
有人可以给我一些建议吗?谢谢
- - 更新 - -
其实 select SQL 的回调函数并不是匿名函数,我的 db.end() 代码片段是这样的:
node.js - nodejs mysql如何读取配置参数
数据库.ini
console.log 的输出:
这是我的 nodejs 脚本的顶部。console.log 输出正常,但未建立连接。不知何故,在 createConnection 中无法识别配置变量。
有人有建议吗?