位置: 编程技术 - 正文

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

  • 收益性支出和资产的区别
  • 同一商品税收分类编码不一样
  • 软件退税收入会计分录
  • 发生了原材料运进和成品运出,但并未发生所有权
  • 其他应收款增加银行存款减少的原因
  • 文化创意服务的税率
  • 农药增值税减免政策
  • 固定资产更换零部件的入账价值
  • 企业之间无偿借款
  • 每月工资个税为零
  • 政府补贴项目申报流程
  • 押金满一年才能退
  • 接受实物投资的增值税会计核算方法
  • 如何正确理解新制度经济学与新古典经济学的关系
  • 异地业务操作
  • 个人承担的社保计入管理费用吗
  • 公司非本单位退休人员发放工资
  • 预估成本怎么冲回
  • 注册资金印花税什么时候开始交
  • 不可抵扣的进项税额如何做账
  • 应交增值税出口退税年末如何结转?
  • 免抵退免抵额何时申报附加税?
  • 华为鸿蒙系统的服务
  • 本月暂估成本的会计分录
  • PHP:Memcached::deleteByKey()的用法_Memcached类
  • 党建活动室投入使用
  • PHP:pcntl_getpriority()的用法_PCNTL函数
  • 金融业营业税税率
  • 其他业务支出属于什么会计科目
  • php网页安全认证是什么
  • 会计账务处理年限规定
  • 金融服务机构
  • web服务器的搭建与应用
  • Centos6.5和Centos7 php环境搭建方法
  • 建设项目罚款支出的会计处理
  • mvc与mvvm
  • 文心一言 VS ChatGPT
  • 微信支付php代码
  • 新成立的公司怎么算生育津贴
  • 织梦最新发表的作品
  • 个税计税周期 一年
  • 增资扩股税务处罚标准
  • 配件出口可以退税吗
  • 行政性罚款怎么结转损益
  • 法院判决后的利息
  • 财政补助结转会计处理
  • 关联方利息支出税前扣除规定
  • 长期股权投资的交易费用计入哪里
  • sql server 使用
  • mysql select语句操作实例
  • 营业总收入包含什么
  • 印花税减免计入什么科目
  • 个人如何缴纳公积金和社保费用
  • 计提工资时个税怎么处理
  • 4s店出售试驾车账务处理
  • 银行结息需要开发票吗
  • 事业单位可以报考事业单位吗
  • 工程施工中购买的设备一直未入账需要评估吗
  • 什么叫社保差额调整
  • 阿里云 mybase
  • sql语句大全实例教程
  • 数据库mysql索引
  • win7怎么清除记录
  • foxmail反应慢的原因
  • linux临时目录在哪
  • mysql8安装步骤
  • centos下安装gcc
  • linux网络编程宋敬彬pdf
  • SFC无需光盘出马,硬盘搞定
  • win8找不到桌面
  • 控制面板win8在哪里
  • 常用服务器配置
  • python3m
  • hbase获取所有表
  • python多进程模块
  • python爬虫抓取数据的步骤
  • 在androidstudio中,如何改变图片的位置
  • 研发材料占研发费用比例超出50%
  • 北京 国税局
  • 普通发票开具时写材料一批需要附什么清单?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设