繁体   English   中英

一个如何查询Zend_Db_Table_Row

[英]How does one query a Zend_Db_Table_Row

是否可以对Zend_Db_Table_Row对象运行SQL(Zend_Db_Select)查询? 如何联接两个Zend_Db_Table_Row对象?

我知道听起来有些迟钝,但是我正在处理成百上千的行。 我已经有要处理的行对象,所以我不想再次查询数据库。

我希望这很清楚。 如果没有,请让我澄清。

编辑:

为了明确起见,对象位于内存中。 我已经从数据库中检索了它们。

原因是:

“日志”表中有成千上万条记录。 我需要根据多个用户定义的标准对这些做出反应。 处理这些日志时,时间很重要。 需要有一个新的流程来使此流程及时发生。 每个日志都会产生一个新的过程。 因此,对象已经存在于内存中。

考虑定义关系,然后在Row对象上调用findDependentRowset():

http://framework.zend.com/manual/en/zend.db.table.relationships.html

Zend_Db_Table_Row对象是行,不能查询,因为它们不再存在于数据库中,它们作为ZF的一部分在内存中。 它们是由PHP处理的内存中的一组数据-它们不再与数据库有关,因此无法按照您的建议进行查询。

您应该在模型或Zend_Db_Table类中使用findDependentRowset()来定义表之间的关系,然后ZF将为您将JOIN语句写入JOIN表中,查询完基准数据库之后,联接的数据将位于Zend_Db_Table_Row对象中。

或者,您可以使用此处详述的join()将两个或更多表JOIN在一起。 您需要对要查询的选择对象进行联接。 您需要使用数据库引擎的功能来获取所需的数据。 与使用datbase相比,在PHP中执行此操作要慢得多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM