Ruby on rails Mysql2::错误:“字段列表”中的未知列“users.*”

Ruby on rails Mysql2::错误:“字段列表”中的未知列“users.*”,ruby-on-rails,mysql2,Ruby On Rails,Mysql2,我看到对多个表抛出此错误。搜索StackOverflow似乎大多数人的问题都与缺少特定列有关,但在我的情况下,它试图选择所有内容,即使用* 有人有什么见解吗 Mysql2::Error: Unknown column 'users.*' in 'field list' 更新 从rails日志: Mysql2::Error: Unknown column 'users.*' in 'field list': SELECT `users`.`*` FROM `users` WHERE `use

我看到对多个表抛出此错误。搜索StackOverflow似乎大多数人的问题都与缺少特定列有关,但在我的情况下,它试图选择所有内容,即使用*

有人有什么见解吗

Mysql2::Error: Unknown column 'users.*' in 'field list'
更新

从rails日志:

Mysql2::Error: Unknown column 'users.*' in 'field list': SELECT  `users`.`*` FROM `users`  WHERE `users`.`id` = 53  ORDER BY `users`.`id` ASC LIMIT 1
我想出了如何在本地重现这种情况,或者至少我认为它可能是如何发生的:

2.1.2 :037 > client = Mysql2::Client.new(:host => "localhost", :username => "root",  :password => "root", :database => "development")
 => #<Mysql2::Client:0x007ff45b72dd30 @read_timeout=nil, @query_options={:as=>:hash, :async=>false, :cast_booleans=>false, :symbolize_keys=>false, :database_timezone=>:local, :application_timezone=>nil, :cache_rows=>true, :connect_flags=>2147525125, :cast=>true, :host=>"localhost", :username=>"root", :password=>"root", :database=>"development"}> 
2.1.2 :038 > result = client.query("SELECT `users`.`*` FROM `users` LIMIT 1")
Mysql2::Error: Unknown column 'users.*' in 'field list'
    from (irb):40:in `query'
    from (irb):40
    from /Users/mark/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/console.rb:90:in `start'
    from /Users/mark/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/console.rb:9:in `start'
    from /Users/mark/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/commands_tasks.rb:69:in `console'
    from /Users/mark/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
    from /Users/mark/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands.rb:17:in `<top (required)>'
    from bin/rails:4:in `require'
    from bin/rails:4:in `<main>'
当特殊的all选择器*用引号括起时失败

SELECT `users`.* FROM `users` LIMIT 1

工作没有问题。也许这是MySQL的事情?无论如何,这些查询都是由ActiveRecord/ActiveModel生成的,所以我可能发现了一个bug。

数据库中是否存在该表?@japed是的,有一个users表。您能发布完整的查询结果吗backtrace@japed也许这是一个应该加入“用户”的查询,但不应该。您应该提供一个代码示例,演示错误以及您正在使用的可能与mysql2 gem和活动记录交互/修改的任何其他gem。有时,我发现在活动记录关系上调用.to_sql并将其打印到日志或“puts”(如果我遇到奇怪的sql错误)会很有帮助。
SELECT `users`.* FROM `users` LIMIT 1