【发布时间】:2015-08-15 21:30:41
【问题描述】:
我有一个包含 mysql 插入的 ruby 脚本,该脚本工作正常,直到它到达包含包含撇号的数据的行。该行也使用变量填充,我不确定如何转义字符,以便插入成功。
有什么想法吗?
【问题讨论】:
我有一个包含 mysql 插入的 ruby 脚本,该脚本工作正常,直到它到达包含包含撇号的数据的行。该行也使用变量填充,我不确定如何转义字符,以便插入成功。
有什么想法吗?
【问题讨论】:
在连接对象上使用quote方法:
quote(value, column = nil)
引用列值有助于防止 SQL 注入攻击。 示例:
my_name = ActiveRecord::Base.connection.quote("John O'Neil")
my_address = ActiveRecord::Base.connection.quote("R'lyeh")
query = "INSERT INTO companies (name,address) VALUES (#{my_name}, #{my_address})"
ActiveRecord::Base.connection.execute(query);
原帖:
【讨论】: