sql - 在层次结构表中复制一行及其下方的所有行
问题描述
我不知道我的请求是否有名称,但我认为它可以称为“在层次结构表中复制一行及其下方的所有行”。
我想创建一个可以复制记录及其所有子孙记录的存储过程。
当我说“重复”时,我主要将列中的所有记录值复制到同一张表上的新记录(副本应该没有主键 ID 列,因为它是自动的)这个存储过程需要获取两个参数:
- 参数 1 - 表名
- 参数 2 - 需要复制的主键 ID(该表名称)的值。
代码说明:
- 该值(参数 2)将在表(参数 1)上找到一条记录并将其复制(正如我所说的,除该表的主键之外的所有列的值相同。
- 然后我们需要知道与这个主键(父表的)有关系的所有表名
- 然后每个子表将复制具有相同 Id 值(参数 2)的记录与新的 Id 值(新的父记录)。
几件事:在梦想的场景中,代码知道没有任何限制(孩子,孙子,曾孙......),但我想这是一个非常复杂的代码,将包含一些递归代码,所以即使是代码包含多达 3-4 个级别,我会很高兴地接受。
解决方案
推荐阅读
- rest - 从 .net mvc 2.0 razor pagemodel 应用程序中使用 restful 基本 auth rest web 服务
- git - 仅在 git log 中显示标记的提交
- python - 根据另一个数据框的列名和索引值填充数据框
- python - 如何使用 Python3 获取当前日期的 EOMONTH(月末)
- android - 从 webview 打印 pdf.js 生成的文档
- javascript - 如何处理流星呼叫内或呼叫后的事件?
- macos - 如何让 /usr/bin/mail 在 Mac 10.14 上通过 gmail 发送邮件?
- html - 通过查询插入的时间在几分钟后显示更多数字
- java - 如何使用 apache camel 从 elasticseach 获取所有条目?
- codeigniter - 发送带有个性化正文的邮件