位置: 编程技术 - 正文

一道关于数据库(经典父子级 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 存储过程(深入分析换一种说法)

  • 个人所得税速算扣除数表
  • 验收入库材料结转怎么写
  • 样品费用会计分录
  • 有营业执照有什么好处吗?
  • 企业的成本核算包括
  • 出口退税申报无电子信息
  • 筹办期的工资费用是什么
  • 员工向公司借的备用金到年底未还清
  • 1元转让股权账务实
  • 融资租赁首付款支付给供应商
  • 未收到增值税专用发票
  • iphone手机腾讯视频怎么取消自动续费
  • 增值税什么情况下可以退税
  • 进项税核定扣除试点
  • 公司发的现金
  • 开票软件上怎么抄税
  • 金融服务收入怎么算
  • 经营性现金净流量是什么意思
  • 四项服务加计扣除政策2023
  • 哪些项目可以在城镇开发边界外
  • php怎么上传多个图片
  • phpstudy的ftp
  • 非合理损耗会计分录
  • bds.exe
  • 愚人二部曲
  • php返回值
  • 外贸进出口企业退税
  • 篱笆的样子
  • 直接材料成本差异账户在平时登记贷方登记
  • 当月已验旧的发票怎么开
  • php数组的类型有哪些
  • 数据分析课
  • vue内置指令实验总结
  • 尚融资本
  • 已失效是什么意思
  • 蓝桥杯b组2020
  • vue前端常见面试题
  • 出口退税进项税额转出怎么申报
  • 应发工资与应税的区别
  • 现金流量表的填列方法
  • wordpress site
  • 对于投资者而言购买债券型理财产品面临的最大风险来自
  • 在建工程什么时候结转
  • sql2005数据库
  • 发票税率怎么改成3%
  • 营业外支出的会计要素
  • 费用月结怎么记账
  • 物流公司交的保证金可以退吗?
  • 劳务公司可以用工资表做成本
  • 期末留抵税额和账上哪一个数对应
  • 承租方承担的税费有哪些
  • 税控盘的主要功能
  • 不能抵扣的会计分录
  • 二类银行卡是什么卡
  • sql server ceiling
  • win7双击文件无反应
  • Windows Server 2008中审核和符合性
  • 上网本安装win7
  • explorer.exe是什么指令
  • win8如何添加我的电脑
  • win2008个性化
  • w10操作系统内部版本
  • 微软开始推送win10
  • win7打开回收站
  • javascript 操作css
  • Android游戏开发pdf
  • Cocos2dx3.2 Crazy Tetris 制作简单的凸多边形刚体
  • css设置表格隔行换色
  • 安卓中的多线程
  • NGUI之UITab Bar的不能将Sprite与SelectedSprite设置成相同的精灵
  • 修改cmd中显示的用户名!
  • node 多线程
  • python字符串中的反斜杠
  • 在jquery中fadein
  • activity与fragment的通信
  • javascript快速入门
  • 简单的移动端项目
  • python如何入门
  • 青岛胶州国际机场在哪个区
  • 贵州税务发票流向查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设