2011-01-07 36 views
0

我有这个笨活动记录查询:连字符的ActiveRecord查询

$this->db->join('day-info', 'day-info.date = run-info.date'); 

如预期,因为某种原因分开“天”和“信息”,给我一个错误信息它不运行。我怎样才能解决这个问题?

+0

什么是生成的sql语句?你的整个活动记录查询是什么? –

+0

什么是错误信息? –

回答

1

这个不起作用的原因是因为-(hypen)是一个操作符。

拥有一个名为day-info的表是一个非标准表名。

可以解决这个问题我加入back-ticks(`)围着桌子/列名相信编辑该代码将不会显示proeprly由于back-ticks被转义。

(在标准的SQL中,你可以使用双引号,MySQL会使用back-ticks)。

但是您是否真的想每次都手动转义字段?

在我看来,对于表格和字段名称使用_下划线代替您最有利。

+0

好的,将其改为下划线。谢谢! – Nick

+1

$ this-> db-> join('day-info','day-info.date = run-info.date',false);也会起作用 – Louis