【发布时间】:2010-08-21 22:43:14
【问题描述】:
使用 Rails/ActiveRecord 2.3.8 我想做:
AnyModel.connection.create_table( 'temp_any_model', temporary: true, id: false, options: 'like any_model' )
但是AR坚持在生成的SQL中添加“()”,即使字段列表是空白的,因为正在克隆表DDL,从而导致例如:
ActiveRecord::StatementInvalid: Mysql::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') like any_model' at line 1:
CREATE TEMPORARY TABLE `temp_any_model` () like any_model
有没有办法强制 AR 生成这个简单的create tablenewlike existing 语句?
除了connection.execute(string) ?
【问题讨论】:
标签: ruby-on-rails activerecord connection create-table