【发布时间】:2014-03-01 04:49:52
【问题描述】:
我有一个使用 NotORM 的非常简单的查询(或者我是这么认为的):
$query = $db-> irregular
->select('id','name','starttime','endtime')
->where('customer_id',$_SESSION['user']['customer_id'])
->where("startdate > ? ", new NotORM_Literal("NOW()")) );
“?”在上述情况下不会被替换。查询只是读取
SELECT id, name, starttime, endtime FROM irregular WHERE (customer_id = '1') AND (startdate > ? )
这意味着如何在 NotORM 中工作?
【问题讨论】:
-
new NotORM_Literal("NOW()"))产生结果? -
新的 NotORM_Literal 是我正在使用的。问题似乎是 NotORM 没有换掉 ?应该的。
-
它可能工作正常。
?是准备好的语句中变量的占位符,它将与查询分开发送到服务器。 -
谢谢,迈克。因此,如果它可能正常工作,那么我如何才能真正获得我想要的最终结果?也就是说,如何只选择开始日期为>现在的记录?
-
@Will 我对 notorm 不熟悉,但请尝试:
->where("startdate > NOW()");并忽略第二个参数。让 MySQL 计算NOW是什么总是最安全的选择。