我想遍历存储在Zend_Db_Table_Rowset对象中的数据行,然后删除/取消设置一些行,如果它们不满足某些条件的话。我可以使用toArray()只从对象中获取数据行,然后很容易取消设置我不需要的行。但由于我想保留我的对象以供进一步使用,所以我不想这样做。当然,一种解决方案是调整我的查询以便仅检索我需要的内容,但在这种情况下这是不可能的。至少我不知道怎么做。我尝试了以下方法,但没有用:foreach($rowsetas$key=>$row){if(!$condition==satisfied){unset($rowset[$key]);}}当然它不起作用,因为没有$rowset[
直到今天,我在处理查询结果时一直使用ResultSet。但是今天我读了一些关于RowSet的内容和CachedRowset我意识到它们可以更好地服务于我的目的。虽然在我阅读的所有示例中,RowSet和CachedRowSet都被称为对象,但当我自己在代码中尝试时,我意识到它们是接口(interface),在它们使用的示例中这些接口(interface)的一些实现。现在我的问题是我在哪里可以找到这些实现,是否有官方的东西?我需要下载它们还是它们随JDK一起提供? 最佳答案 实现是特定于JRE的。Oracle(Sun)JRE带有一堆实现
我正在使用javax.sql.rowset.CachedRowSet进行调查在我的部分应用程序中,但是我只能找到有关使用专有sun实现的信息com.sun.rowset.CachedRowSetImpl或Oracle特定的实现。sun实现是unsupportedandsubjecttochange.如果我以后想部署到非Sun虚拟机,使用它也可能会导致问题,最后它会在我们的构建日志中留下无法抑制的警告,从而掩盖其他警告。是否有一个开源替代实现,我们可以部署在我的应用程序中,并且可以在多个数据库中正常工作?至少支持MySQL。 最佳答案
我正在使用javax.sql.rowset.CachedRowSet进行调查在我的部分应用程序中,但是我只能找到有关使用专有sun实现的信息com.sun.rowset.CachedRowSetImpl或Oracle特定的实现。sun实现是unsupportedandsubjecttochange.如果我以后想部署到非Sun虚拟机,使用它也可能会导致问题,最后它会在我们的构建日志中留下无法抑制的警告,从而掩盖其他警告。是否有一个开源替代实现,我们可以部署在我的应用程序中,并且可以在多个数据库中正常工作?至少支持MySQL。 最佳答案