I was going through the Zend Framework quickstart tutorial, and in their demo code they use a data mapper which uses Zend_DB_Table to access the database (see: http://framework.zend.com/manual/en/learning.quickstart.create-model.html). It seems that Zend_DB_Table doesn't use prepared statements or provide a way to use transactions though. Therefore, I'm leaning towards just using a datamapper directly with a zend_db_adapter. With that in mind, can someone advise as to the situations where Zend_DB_Table would be advantageous? Appreciate your input! Cheers.
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

使用带有Zend_Db_Table的DataMapper而不是直接使用带有数据库适配器的DataMapper有什么好处?
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
duanchen1937 2011-02-25 03:00关注In general, I see
Zend_Db_Table
as a quick and easy way to do single-table queries.You can surely do joins with
Zend_Db_Table
, but since the class is targeted towards a specific table (after all, it is intended as a Table Data Gateway implementation), all such joins always feel - to me, at least - like an unnatural graft. In that case, I always tend towards straight adapter-based queries with joins, that could include your transaction handling.Of course, in either case, it is certainly desirable to put all of this behind a model or mapper or service layer. Then, as you change these implementation details- say, start out with a
Zend_Db_Table
implementation, but later realize you need to join data from a another table, so you move to adapter-based queries - none of this will affect consumers of the model/mapper/service.Hope this helps.
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容

- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
- 2021-06-06 16:01使用gem install命令gem install 辛纳特拉 dm-核心 dm-时间戳 do_sqlite3 dm-sqlite-适配器 dm-迁移 授权 ================ Sinatra 和 DataMapper 警告:这段代码很难,这个想法再次不是理解所有内容并在文本...
- 2021-02-05 12:40循环ORM Cycle是PHP DataMapper,ORM和数据建模引擎,旨在安全地在经典的守护程序PHP应用程序(如 )中工作。 ORM提供了灵活的配置选项来建模数据集,强大的查询生成器并支持动态映射架构。 该引擎可以使用普通PHP...
- 2021-04-30 10:05MiniRecord允许您直接在模型中创建/编辑/管理列。特征在模型中定义列/属性自动执行迁移自动升级您的架构添加,删除,更改列添加,删除,更改索引指示您需要的是移动/删除db/schema.rb 。 这样可以避免冲突。 添加到...
- 2024-12-03 03:22Redis 的 DataMapper 适配器dm-redis-适配器这是Redis键值存储的DataMapper适配器。Redis 是一种非常快速的键值存储,它添加了一些有趣的数据结构,而且功能还不止于此。您可以拥有二进制安全的SET、LIST、STRING或...
- 2021-02-05 10:21will_paginate will_paginate是一个分页库,与Ruby on Rails,Sinatra,Hanami :: View,Merb,DataMapper和Sequel集成。 安装: ## Gemfile for Rails 3+, Sinatra, and Merbgem 'will_paginate' , '~> 3.1.0' 有关...
- 2021-04-08 18:09循环ORM-带注释的实体 例子: /** * @Entity(repository = "Repository/UserRepository") */ class User { /** @Column(type="primary") */ protected $ id ; /** @HasOne(target=Profile::class, load=...
- 2021-02-04 23:154. **ORM (Object-Relational Mapping)**:是一种编程技术,用于将关系数据库的数据映射到对象上,使得开发者可以使用面向对象的方式来操作数据库,而无需关心底层的SQL语句。 5. **CrystalCrystal**:可能是标签...
- 2021-06-03 08:07在使用 CodeIgniter-DatamapperORM 时,开发者可以享受 CodeIgniter 的易用性和 Datamapper ORM 的强大功能,实现更高效的代码组织和数据库操作。这个基本应用程序是一个很好的起点,可以通过添加更多的功能和定制来...
- 2021-09-09 07:093. **数据访问层(DAL)**:与数据库进行交互的部分,使用IBatisNet.DataMapper进行数据库操作。DAL通过配置文件(如XML)定义了SQL语句和数据对象的映射,使得数据库操作变得更加简洁。 **IBatisNet.DataMapper的...
- 2021-05-26 23:56Cycle ORM Cycle是PHP DataMapper,ORM和数据建模引擎,旨在安全地在经典的守护进程PHP应用程序(如RoadRunner)中工作。 ORM提供了灵活的配置选项来对数据集进行建模,pow Cycle ORM Cycle是PHP DataMapper,ORM和...
- 2021-04-22 04:41现货DataMapper ORM v2.0 Spot v2.x建立在 DBAL之上,并针对PHP 5.4+。 Spot的目标是成为一种清晰,高效且简单的轻量级... 创建一个新的Spot\Config实例,并添加带有DSN字符串的数据库连接,以便Spot可以建立数据库
- 2021-05-22 01:43您必须使用CodeIgniter创建一个小的注释系统,现在将创建新闻的后端和前端,并创建注释模型,该模型由Datamapper实现。 该测试包括:访问新闻时,必须完成html表单才能通过POST发送,并在表中插入评论,并将其与...
- 2019-08-27 04:10而 t3v_datamapper 的目标就是将这种便利性带到 Typo3 平台,使得 Typo3 开发者也能享受到类似 Laravel 的开发体验。 **Eloquent ORM 在 t3v_datamapper 中的应用** Eloquent ORM 是 Laravel 的核心组件之一,它...
- 2021-12-22 09:25在这个项目中,这一层可能会包含多个服务类或业务实体,它们使用IBatisNet.DataMapper来与数据库进行交互。通过封装数据库操作,业务逻辑层可以确保数据的一致性和完整性。 3. **数据访问层(Data Access Layer)**...
- 2021-06-01 17:59"使用 Sinatra + Datamapper 休息服务" 描述了这个项目的技术栈。Sinatra 是一个轻量级的 Ruby 框架,用于快速构建Web应用程序,尤其适合创建RESTful API。Datamapper 是一个数据映射工具,它简化了数据库操作,提供...
- 2021-02-05 12:58一个功能强大但易于使用PHP微框架,旨在帮助您快速构建动态而强大的Web应用程序! F3(我们亲切地称它)压缩在一个约65KB的文件中,为您提供了坚实的基础,成熟的代码库以及一种编写Web应用程序的简便方法。 底层是...
- 2022-05-19 03:24[其他类别]IBatisNet.DataMapper 1.6.1.0 之简单三层_ibatisnetdemo.zip源码ASP.[其他类别]IBatisNet.DataMapper 1.6.1.0 之简单三层_ibatisnetdemo.zip源码ASP.[其他类别]IBatisNet.DataMapper 1.6.1.0 之简单三层_...
- 2011-12-10 07:13在PHP开发中,数据映射(DataMapper)模式是一种对象关系映射(ORM)方法,它将业务对象与数据库表之间的交互分离出来,提供了一种更灵活的数据访问方式。本项目实现了PHP的DataMapper模式,使得数据操作变得更加...
- 2021-04-28 02:30数据映射器使用Excel映射数据映射数据以生成用于数据集成的XSLT
- 2019-08-15 05:14Ruby是一种动态、面向对象的编程语言,而DataMapper是一种Object-Relational Mapping(ORM)框架,它在Ruby社区中被广泛使用,特别是对于那些希望在数据库中存储和管理对象的开发者。Perpetuity就是这样一个专门为...
- 没有解决我的问题, 去提问
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司