使用一个存储过程处理一对多的数据

今天Insus.NET分享经验,在开发时,我们是怎样存储一对多关系的数据。怎样说呢,你会遇上主表记录与子表记录同时存储,但子表与主表有主外键关联。

下面创建两张表,它们有关联,主键外键。

 

一般情况之下,你先添加主表TableA的记录,得到添加的主键值之后,再添加TableB的记录。或者是同时提交,但需要程序连2次数据库,得到主键值,再插入TableB的数据。

下面Insus.NET的做法是一次性提交至数据库中。
先数据库中,创建的自定义表类型,这个类型基本上就是TableB的结构:

 创建一个存储过程,对主表TableA数据插入,并返回主键值。

 

下面的存储过程,才是给程序引用:

 
在程序中,我们可以创建一个类别:

 

前端使用这个类别:


执行结果:

 

posted @   Insus.NET  阅读(2212)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
历史上的今天:
2013-10-20 自定义MVC的Helper扩展方法
2013-10-20 MVC 5使用TempData Object跨视图传递数据
2012-10-20 在用户控件中动态添加控件及事件
2012-10-20 从图片路径获取图片尺寸
点击右上角即可分享
微信分享提示