我一直在尝试在javascript中实现参数化的sql查询。当只有一个参数与查询一起传递时,它似乎有效。
yield db.execute("SELECT id FROM table1 WHERE name = @0", [foo] );
但问题是当我尝试在同一个查询中实现两个参数时。
yield db.execute("DELETE FROM table1 where table1_id = @0 AND name = @1", 123, [foo]);
有没有办法解决这个问题?
答案 0 :(得分:0)
将两个查询参数传递到数组中:
yield db.execute("DELETE FROM table1 where table1_id = @0 AND name = @1", [123, foo]);
// -----------------------------------------------------------------------^^^^^^^^^^
您将execute
函数传递给查询123
和[foo]
,而不是将查询传递给[123, foo]
。