我最初的问题是我需要向DB插入大量记录,所以为了加快速度,我想使用mysqlimport,它接受一个行值文件并将它们加载到指定的表中。所以假设我有模型Book,我不能简单地使用book.attributes.values,因为其中一个字段是一个序列化为db的哈希(使用serialize),所以我需要知道这个哈希将被存储的格式是什么在数据库中。时间和日期字段相同。有什么帮助吗?
答案 0 :(得分:0)
如何使用SQL插入语句而不是序列化?
book = Book.new(:title => 'Much Ado About Nothing', author: 'William Shakespeare')
sql = book.class.arel_table.create_insert
.tap { |im| im.insert(record.send(
:arel_attributes_with_values_for_create,
record.attribute_names)) }
.to_sql