当前位置: 首页 > news >正文

设计模式- 数据源架构模式

表数据入口(Table Data Gateway)

充当数据库表访问入口的对象。一个实例处理表中所有的行。

表数据入口包含了用于访问单个表或者视图的所有SQL,如选择、插入、更新、删除等。其他代码调用它的方法来实现所有与数据库的交互。

运行机制

  • 表数据入口包括的每个方法,都将输入参数映射为一个SQL调用,并在数据库连接上执行该语句。
  • 对于返回多行的方法,采取两种方法:
  • 映射。把数据从数据集中复制到映射中,但是破坏了编译时检查.
  • 数据传输对象。工作的较好,尽管需要创建额外的对象。
  • 使用结果集。尽管在如.NET中很好地支持表数据入口和表模块很好地协调,单会带来概念上地混淆,因为内存中地对象无需知道SQL接口。
  • 表数据入口可以适当地和领域对象一起工作,但领域对象和表入口之间会产生双向依赖。
  • 可以为视图使用表数据入口,但要注意视图无法更新。

使用时机

  • 表数据入口可以很好地映射到数据库上去,但和领域模型很少一起使用,因为数据映射器就能很好地分离领域模型和数据库。
  • 表数据入口可以和表模块一起很好地使用,产生地记录集由表模块处理。
  • 特别适用于事务脚本。
  • 表数据入口和存储过程类似。插入和更新存储过程实际上也封装了实际地表结构

表数据入口示例

用表数据入口获取数据

用表数据入口获取数据,并返回多行

类似地,可以创建修改和插入方法……

表数据入口示例

使用数据集
数据集和适配器是C#原有特性,在二者之间定义一个保持器,用于建立数据集和数据适配器之间地联系-填充适配器

http://www.lryc.cn/news/418876.html

相关文章:

  • Unity 使用字符串更改Text指定文字颜色、大小、换行、透明
  • 数字信号处理2: 离散信号与系统的频谱分析
  • 20240805软考架构--------每日打卡题21-25
  • GPT-5:未来已来,你准备好了吗?
  • 解决C#对Firebase数据序列化失败的难题
  • 设计模式中的类关系
  • glibc的安装及MySQL的安全用户角色权限(twenty-one day)
  • AttributeError: ‘ChatGLMTokenizer‘ object has no attribute ‘sp_tokenizer‘. 已解决
  • 徐州BGP机房与普通机房的区别有哪些?
  • VBA 程序运行中禁用鼠标键盘
  • CUDA编程从零到壹
  • 【国产开源可视化引擎】Meta2d.js API-Utils
  • 大模型与数据分析的融合:创新与发展的新机遇
  • 基于融合正余弦和柯西变异的麻雀搜索算法SCSSA优化CNN-BiLSTM的多变量时间序列预测
  • c++基本数据类型变量的最大值,最小值和内存空间
  • 005集——运算符和循环——C#学习笔记
  • 【Tessent IJATG Users Manual】【Ch5】IJTAG Network Insertion
  • 我在高职教STM32——I2C通信入门(2)
  • GPT解逻辑数学题之8个8变1000的故事
  • 10、MySQL-索引
  • 【python】Python操作Redis数据库的详细教程与应用实战
  • 【数据结构的——红黑树】
  • 第十二章:设置pod和容器权限-保障集群内节点和⽹络安全
  • 灵途科技再度入选2024年度“光谷瞪羚”企业名单!
  • Centos7.6配置阿里云镜像源
  • 梨子的功效与作用 梨子生吃熟吃功效竟大不同
  • 北斗三号5G遥测终端机系统在水库大坝安全监测应用
  • 代码随想录算法训练营第五十一天|99.岛屿数量 深搜 、99.岛屿数量 广搜、岛屿的最大面积
  • 【c++刷题笔记-图论】day62:Floyd 算法、A * 算法精讲
  • FPGA知识基础之--clocking wizard ip核的使用以及modelsim与vivado联合仿真