位置: 编程技术 - 正文

一道关于数据库(经典父子级 ID 关联)更新题(关于数据库的叙述)

编辑:rootadmin

推荐整理分享一道关于数据库(经典父子级 ID 关联)更新题(关于数据库的叙述),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:一道关于数据库的命令,一个关于数据库文件中的各条记录,关于数据库的叙述中错误的是,一道关于数据库的命令,一道关于数据库的题目,一个关于数据库文件中的各条记录,一道关于数据库的题目,一道关于数据库的题目,内容如对您有帮助,希望把文章链接给更多的朋友!

昨天,一同事发过来的一道数据库题目,就是哪种经典的父子级 ID 在同一数据库表中设计类型。需要在原表中添加一个字段,同时,将该节点的父子级详细信息插入到原表新增的一字段中,具体效果如下图。

AreaCode 、AreaName、ParentCode (原表三字段). Content __新增字段,更新该 AreaCode 下所有父级菜单信息至新增至原表的 Content 字段下面,用红线框起来(意思应该讲明白了吧.)

AreaCode:地区 ID AreaName:地区介绍 ParentCode:父级 AreaCode (Content---将该 AreaCode 下的所有父级 AreaName 拼成 类似:越城区,绍兴市,浙江省 字符串插入)

更新前:

更新后:

在项目中,相对于此种内容,一般会存储在内存中,作为缓存使用,避免频繁连接数据库,带来的性能问题。

代码就不上了,简单的递归即可实现。

一道关于数据库(经典父子级 ID 关联)更新题(关于数据库的叙述)

1 先从数据库将该表所有内容取出来,缓存起来。(该表差不多 左右条数据)2 再写个递归函数,根据每次传入的 AreaCode(第一步已缓存数据库取出来的整表集合 可转成 Dictionary<int,AreaRegion> 类型),获取其 ParentCode 值,只要 ParentCode 不为 0(即不为顶级结点,ParentCode 为顶级结点),那么,继续调用该函数,传入本次查询实体的 ParentCode 信息。3 在代码很方便查出父结点所有信息,再 Update 至数据库即可。

感谢 清海扬波 grayboy 完全可以通过公用表表达式完成

Code 如下:

--- 楼主当初想法(我想复杂了 SB 了 )

1 楼主,首当其冲想到的是,即采用游标存储整表记录。

2 游标每次取得一条记录的 AreaCode ,再通过该 AreaCode 查出其所有父级表(包括自身)信息,最后,将查询出的该表某字段拼成字符串,

插入表变量中(两字段分别为:AreaCode、Content)。

3 最后,将定义的表变量与原表通过 INNER JOIN(表变量中插入了 AreaCode 字段),进行联表更新。

更新脚本具体如下:

原表部分脚本 SQL

深入分析SQL Server 存储过程 Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓

SQL函数substr使用简介 substr(string,1,3)函数解读:取string中重左往右取3字长的字符串。结果为:str从右往左呢?应该有另一个函数来提供这样的功能吧!事实上,从右往左也是

调整SQLServer运行中数据库结构 开发过程中的数据库结构结构,不可避免的会需要反复的修改。最麻烦的情况莫过于开发者数据库结构已经修改,而实际应用中数据库又有大量数据,

标签: 关于数据库的叙述

本文链接地址:https://www.jiuchutong.com/biancheng/347755.html 转载请保留说明!

上一篇:关于SQL的几道小题详解(sql进阶)(关于sql的几道小知识)

下一篇:深入分析SQL Server 存储过程(深入分析换一种说法)

  • 小规模增值税附表一怎么填
  • 免税是什么税
  • 销售商品价格含税吗
  • 礼品费如何报销
  • 小规模企业多交增值税
  • 购销合同印花税优惠政策
  • 废物处置费如何做分录?
  • 企业借款不能超过资金多少
  • 企业所得税的减按征收如何计算
  • 应缴纳的所得税税额
  • 车辆购置税入什么科目?
  • 买二手车年限久的会怎样
  • 个人所得税法规定可减征个税的情形有
  • 如何处理走逃失的人
  • 电话费补贴属于免税收入吗
  • 个人如何申报初级医师职称
  • 房地产开发企业所得税管理办法
  • 注册资本认缴制开始实施时间
  • 发票金额与实际金额不一致违法吗
  • 一般纳税人资质证明文件去哪打印
  • pruttct.exe - pruttct是什么进程 有什么用
  • 文件夹正在使用,操作无法完成
  • php日期时间函数
  • 行政单位预付款已收到货物无发票
  • 财务新手要注意哪些事项
  • minilauncher是什么
  • windows11 beta渠道
  • unity导出webgl报错
  • 海关滞报金可以税前扣除吗 江苏
  • 注销库存股的会计分录怎么理解
  • 聘用退休人员的法律风险
  • 阿普拉萨
  • 在java中有一种叫做
  • yii2 resetful 授权验证详解
  • 马卡雷纳大教堂
  • ai工具用法
  • 【深度学习】pix2pix GAN理论及代码实现与理解
  • 如何使用rank函数排名
  • chatplus
  • 论文精读分析报告
  • 哪里能找到前端练手项目教程
  • php 个人博客 源代码 简单
  • php中文字符串截取
  • 销售退货和销售折让的区别
  • 不是销售类的工作可以做什么
  • 新个税累计预扣怎么算
  • 安装mysql时出现错误
  • 电子发票如何作废,具体怎么操作
  • 烟草专卖生产企业许可证
  • 个人所得税申报数
  • sqlserver2008默认实例
  • 销售退回会计分录
  • 无法支付的应付账款为什么计入营业外支出
  • 贴现利息的计算公式为
  • 出口转内销增值税报表怎么填
  • 仓储费计入哪个部门的费用
  • 公账发工资如何记账
  • 农产品没有发票怎么办
  • 什么是逐步结转分步法
  • insert into tbl() select * from tb2中加入多个条件
  • Windows任务栏中的活动程序间不能切换对吗
  • 怎么更改win7
  • win1021年更新
  • 怎么通过mac连接wifi
  • linux 使用
  • centos6.2安装教程
  • win10重启更新的时候强制关机后会发生啥
  • 阿J的cocos2d-x学习笔记-元素消消看(四)-可发展的空间及游戏开发中的问题
  • unity数学函数
  • 详解16型人格
  • 基于springboot的毕设
  • windows批处理命令脚本
  • vscode 远程调试jni
  • 仿百度首页html代码静态
  • javascript小数四舍五入多种方法实现
  • jqueryui
  • 住房公积金交纳的原则
  • 平安车险如何开票报销
  • 新疆塔城靠近俄罗斯吗
  • 重庆市大足区迪涛中学那几个是尖子班
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设