我正在尝试在Rails中创建此表:
create_table :artist_names do |t|
t.string :name
t.boolean :primary, :default => true
t.integer :artist_id
t.datetime :deleted_at
t.timestamps
end
但是,我对它的查询失败了:
[Dev]> ArtistName.all(:conditions => ['artist_names.primary = ?', true]) ArtistName Load (0.0ms)
SQLite3::SQLException: near "primary": syntax error: SELECT * FROM "artist_names" WHERE (artist_names.primary = 't') AND ("artist_names"."deleted_at" IS NULL)
ActiveRecord::StatementInvalid: SQLite3::SQLException: near "primary": syntax error: SELECT * FROM "artist_names" WHERE (artist_names.primary = 't') AND ("artist_names"."deleted_at" IS NULL)
当我将列的名称更改为其他名称时,我的查询有效,但名称“primary”对我来说最有意义。
如何在保持列名称为“primary”的同时完成此工作?
答案 0 :(得分:1)
用户回溯主要字词。
ArtistName.all(:conditions => ['`primary` = ?', true]) ...