ActiveRecord> MySQL Adapter>区分大小写

时间:2010-09-27 21:56:28

标签: mysql ruby activerecord case-sensitive

我正在使用具有大写表/字段名称(如用户,机构等)的MySQL数据库。由于数据库主机的操作系统是Linux,因此标识符(如表名称)被视为区分大小写。因此,如果没有大写表名将导致表不存在错误。

我想解决的问题是ActiveRecord总是以小写形式构造标识符。因此,例如,如果使用“find”方法从Institution表中获取第一条记录,则生成的SQL将如下所示:

SELECT `institutions`.* FROM `institutions` LIMIT 1

当然,这会导致Linux环境中出现MySQL错误,因为它不区分大小写。

关于如何解决这个问题的任何想法?

提前致谢!

2 个答案:

答案 0 :(得分:2)

class Mouse < ActiveRecord::Base
  set_table_name "Meece"
end

我认为应该清楚你。

答案 1 :(得分:1)