mysql - 插入延迟及防止sql注入(inject)

标签 mysql ruby-on-rails insert sql-injection

之前我用过

Model.create() 

插入一行,现在,我想在Mysql中使用DELAYED选项。

但是,如果我写

ActiveRecord::Base.connection.execute("INSERT DELAYED INTO `TABLE` (`row`)  VALUES (#{params[:id]})")

所以我得到了sql注入(inject)。如何预防呢?

最佳答案

使用connection.quote

id = ActiveRecord::Base.connection.quote(params[:id])
ActiveRecord::Base.connection.execute("INSERT DELAYED INTO `TABLE` (`row`)  VALUES (#{id})")

关于mysql - 插入延迟及防止sql注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6564433/

相关文章:

ruby-on-rails - Rails 复制了资源中的参数

php - 当输入字段中的值已在数据库中时禁用提交按钮

php - MYSQL UPDATE函数的正确使用

php while 循环如果对第一行执行其他操作,则对第二行执行操作?

ruby-on-rails - rails : Using Font Awesome

ruby-on-rails - Rails 6 `protect_from_forgery with: :null_session` 不工作

matlab - 将行插入矩阵matlab

mysql创建过程脚本

Mysql 4 vs Mysql 5 插入时的自动递增字段

php - 如何使用 PHP 搜索栏检索 MySQL 数据库数据