位置: 编程技术 - 正文

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

  • 农民收购农产品发票
  • 子公司向母公司借款利息税务处理
  • 餐饮公司开分店还需要办手续吗
  • 银行电子回单是原始凭证吗
  • 给员工购买意外险进项税能不能抵扣
  • 增值税如何减税
  • 应收账款计提坏账比例
  • 当月进项发票忘了怎么办
  • 公司清算往来科目应该怎么处理?
  • 培训费没有发票怎么办
  • 工程预付款未按时支付
  • 逃避缴纳税款征管法第几条
  • 税号里面字母是大写吗
  • 私立医院适用什么法律
  • 工资不在本单位拿取的能加入会员吗
  • 个人车卖给公司可以抵税吗
  • 出口货物过了退税怎么办
  • 未分配利润为什么不分配
  • 接受国外企业捐款的条件
  • 资产收购的特殊性税务处理方法
  • 跨地区经营建筑企业预缴增值税
  • 委托代销商品账簿模板
  • 备用金借款单怎么写
  • vmware运行win10很卡怎么解决
  • iphone手机怎么把电话号码转到sim
  • 发票遗失复印件加盖什么章
  • 苹果专用win10镜像下载
  • 怎样清理ie
  • qbupdate.exe - qbupdate是什么进程 有什么作用
  • php 7 8
  • 实例讲解yii2.0在php命令行中运行的步骤
  • php中变量有哪些基本数据类型?
  • pax是什么文件
  • windows搭建dvwa
  • 短期投资需要结转吗
  • 无形资产摊销会影响利润吗
  • springboot常用
  • 无偿接收股权
  • 收到现金货款存入银行会计分录
  • php ajax 实现
  • 基于stm32的毕业设计
  • 发票待开是什么意思?
  • 办完外经证怎么交税
  • 帝国cms如何使用
  • 在mysql中创建数据库和表作业
  • 船舶税率是多少
  • sql server字符连接
  • 施工单位转包需要受到什么惩罚
  • 开矿泉水发票怎么开?
  • 接受母公司捐赠现金分录
  • 贷方账户日累计金额超限什么意思
  • 金融企业应当按照交易或事项的实质和经济现实
  • 房屋出租后转租缴纳房产税吗
  • 电影院租金
  • 月末制造费用转入生产成本
  • 支付给劳务人员劳务费需缴纳印花
  • 工程没钱也没有工资
  • 联营公司是关联方吗
  • 无生产经营收入可以评为a吗
  • sql server 自增列设置语句
  • centos清理磁盘空间
  • centos7 ip forward
  • win7系统自动更新在哪里关闭啊
  • vi编辑器是干什么的
  • centos 怎么用
  • linux命令的参数
  • win8自带杀毒软件 关闭
  • win10mobile官网
  • onclick和onclientclick
  • javascript基础
  • 清除垃圾的系统
  • javascript的应用
  • Express + Session 实现登录验证功能
  • c语言深入剖析
  • js修改css文件
  • jquery用什么编写
  • 广东省地方税务局公告2017年第7号
  • 国家税务总局通知公告
  • 慧付钱包app官网下载
  • 税务报道是干什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设