跳到主要内容
CNode

nodejs mysql 我这边用字符串拼的sql 被领导吐槽了 问问各位怎么弄的

问答
Wwtcsy发布于 10 年前最后回复 9 年前
17119740

rt!

查看回复

回复 (17)

N
nullcc#169 年前

别用字符串拼接SQL,稍有不慎SQL注入,应该用参数化SQL

D
dbit-xia#159 年前

我用类似mongo的语法

来自酷炫的 CNodeMD

D
DevinXian#149 年前

不用拼sql,?替代不就可以吗...再说只要不是用户输入,sql拼接又如何... 出错概率确实会比较大

P
poppowerlb2#139 年前
1
13241491189#1210 年前
引用 zouzhenxing@13241491189 NO,我是orm的反对者,我喜欢直接搞sql。这个函数就是mysql模块自带的方法。

@zouzhenxing orm 我配置到项目中 各种不顺手 目前为止也在拼sql

S
shadow88sky#1110 年前

可以参考几个makeSQL方法,底层也用 mysql.escape 做了过滤

M
moyunchen#1010 年前

我用的Sequelize

W
wtcsy#910 年前

多谢各位

Z
zouzhenxing#810 年前

@13241491189 NO,我是orm的反对者,我喜欢直接搞sql。这个函数就是mysql模块自带的方法。

M
magicdawn#710 年前

没事, 用 mysql.escape / mysql.format 然后让领导注入一个试试...他就同意了...

Y
yakczh#510 年前

拼sql 拼时间长了,容易发生对眼

C
CoderIvan#410 年前

字符串拼接SQL,编码效率低,可读性与可维护性差,基本不作考虑的

可以考虑下面两个库: knex squel

I
im-here#310 年前

用1L的方式即可,字符串拼接sql容易被sql注入!

E
eggggger#210 年前

用ORM 比如 Sequelize

Z
zouzhenxing#110 年前

connection.query('SELECT * FROM users WHERE id = ?', [userId], function(err, results) { // ... });

参与回复

登录后即可参与回复。登录