如何把数据字段值更改为当时间

浏览:2453 发布日期:2014/04/22 分类:求助交流 关键字: 数据库 更新 当前时间
我在做一个博客,数据库里有一个字段是记录着文章的最后编辑时间,想用$this->where( "a_id=".$this->aid )->setField( "a_lastedit" => "now()" );但是这样做的话按照TP的机制似乎最后做成的SQL语句应该是update article set a_lastedit = 'now()' where a_id = xxx;这里的now()两边会多出一对引号,应该不能被数据库所识别吧?想问一下大家在这种情况下是如何处理的,谢谢

======= Edit at 2014-04-23 09:12 by SD_Poplar =========
现在关于这个问题已经有了两种解决方法,一种是$this->query( "update article set a_lastedit = now() where a_id = 1" );另一种是用date( "Y-m-d H:i:s" )来获取mysql能够识别的时间格式,但是这两种都存在对数据库的依赖性,虽然后者中的格式在Oracle中也是适用的,但是TP模块化的设计初衷也包括了对数据库的封装,让程序员可以不用在意数据库语法之间的差异,就算数据库从mysql换成了Oracle,业务逻辑也不需要进行修改,所以现在这个问题虽然能够解决,但是仍然感觉它的方法不为最优,希望有更好的方法出现,也希望TP开发方能够想办法支持数据库一些常见内置函数调用的写法,谢谢
最佳答案
评论( 相关
后面还有条评论,点击查看>>