使用 SQL Server 2016 时态表查询已删除记录的最佳方法是什么?

2024-01-28

我正在查看 SQL Server 2016 时态表,找不到任何有效的方法来查询现在已删除的所有历史记录。

我不喜欢软删除或移动到“已删除项目表”,因为我觉得临时表是多余的。

这可以通过时态表以有效的方式实现吗?


时态表旨在为您提供数据的时间点视图,而不是状态视图 - 它实际上并不理解状态。用户不会暴露任何内容来确定行如何到达时态历史表中。

如果您没有临时暂停/停止临时表上的系统版本控制,那么您只需要找到历史表和活动表之间的增量。历史表中所有在活动表中没有对应行的剩余行都将被删除。

例如,如果您有 tblCustCalls 并且使用 tblCustCallsHistory 启用它,类似于SELECT * FROM tblCustCallsHistory WHERE ID NOT IN (SELECT ID FROM tblCustCalls)。在此示例中,ID 是主键。如果表非常大,但基本概念没有改变,您可以优化 TSQL。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 SQL Server 2016 时态表查询已删除记录的最佳方法是什么? 的相关文章

随机推荐

  • 是否需要担心“解析器规则中的隐式标记定义”?

    我正在使用 ANTLR 和 ANTLRWorks 2 创建我的第一个语法 我已经完成了语法本身 它识别用所描述的语言编写的代码并构建正确的解析树 但除此之外我还没有开始任何事情 让我担心的是 解析器规则中第一次出现的标记都会用黄色曲线下划线
  • 用 C++ 读取配置 xml 文件

    如何在C 中读取以下配置文件 STL有支持吗 我无法使用其他第三方库
  • 动画 UIButton Down - Xcode

    我想知道当点击时如何使 UIButton 向下动画 IBAction 提前致谢 在你的里面IBAction UIButton button UIButton sender animates button 25 pixels right an
  • 将寄存器加载到自身的指令的目的是什么?

    在查看 Gameboy 的指令集时 我遇到了如下指令 LD A A LD B B LD C C LD D D 每条指令都有自己的操作码这张桌子 http www pastraiser com cpu gameboy gameboy opco
  • Apollo 客户端错误:无法在上下文中找到“客户端”或作为选项传入。将根组件包装在

    我是新来的阿波罗 我目前正在尝试使用 React 和 Apollo 创建一个应用程序 当我启动我的应用程序时 出现以下错误 在上下文中找不到 客户端 或作为选项传入 将根组件包装在 中 或通过选项传递 ApolloClient 实例 Her
  • 64 位 Windows 的 cygwin 1.7.26 中的 rxvt-native 实用程序在哪里?

    我一直在 cygwin 上使用 rxvt native 程序 我安装了 64 位 cygwin 但在其中找不到 rxvt 包 我安装了相同版本的32位cygwin 看起来它仍然存在 有人知道为什么这个软件包不能用于 64 位 cygwin
  • 如果延迟超过 2147483648 毫秒,setTimeout 会立即触发

    问题 If the delay超过 2147483648 毫秒 24 8551 天 该函数将立即触发 Example setTimeout function console log hey 2147483648 this fires ear
  • Jquery,将标题转换为 Slug

    我有一个执行以下操作的 PHP 脚本 它接受一个字符串 例如 This is a Great Blog Post 1 并返回以下字符串 this is a great blog post 1 我不完全是 Jquery 专家 这就是我问这个问
  • Python-MySQL 中的错误处理

    我正在运行一个基于 python Flask 的小型 Web 服务 我想在其中执行一个小型 MySQL 查询 当我获得 SQL 查询的有效输入时 一切都按预期工作 并且我得到了正确的值 但是 如果该值未存储在数据库中 我会收到一个TypeE
  • 如何使用模板根据类型将元素添加到各种容器

    我有一个相当愚蠢的问题 但我希望你能帮助我 我有包含多个向量的类 并且这些向量具有不同的存储类型 class BaseClass std string Name class B public BaseClass class C public
  • 两栏布局,固定右栏

    我被一个看似简单的两列 CSS 布局所困扰 通常 这种布局很简单 但我正在构建一个响应式网站 需要各列以移动设备的正确顺序折叠 彼此重叠 在桌面上 我需要右列的大小固定 例如 200px 其余区域由左列占据 当然 我需要这些列来清除并将内容
  • Python 中用于日志记录替代功能的配置文件

    我有功能 def go logger logfilename formatter logging Formatter asctime s levelname s message s logging basicConfig filemode
  • 模拟麦克风输入

    我正在尝试编写一个小程序来读取 wav 文件并发送输出 就好像它来自我的麦克风一样 不幸的是我对声音 API 没有太多经验 背景 我基本上想要实现的是一个在我进行语音聊天时播放声音的程序 即 Teamspeak Ventrilo 为了让它现
  • Java 获取特定日期前一天

    我有一个字符串过期日期 但我需要在过期日期到来的前一天执行一些 SQL 语句 我得到了我的过期日期和截止日期 SimpleDateFormat dateFormat new SimpleDateFormat dd MM yyyy Strin
  • 如何使用 mongodump 转储匹配特定日期范围的记录?

    我正在尝试使用 mongodump 命令转储在特定日期创建的一堆记录 这些记录包含一个 ts 字段 它是 MongoDB Date 对象 mongodump 采用 q 参数 可用于运行查询来选择要包含在转储中的记录 不幸的是 q 参数需要在
  • Rails 3.2.8 引擎中 simple_form 的加载错误

    当在 Rails 3 2 8 引擎中加载 simple form 时 simple form 初始值设定项文件 simple form rb 会导致错误 config initializers simple form rb 2 in
  • 何时使用 NSEnumerationConcurrent

    我时不时地注意到 我使用块来迭代集合 而不会写入任何共享数据或导致任何副作用 我考虑添加 NSEnumerationConcurrent 选项 然后决定不使用它 因为我不太明白何时值得使用它 所以我有一个具体的问题和一个更一般的问题 第一个
  • 如何在 VB.NET 中完成 Visual Studio 代码片段?

    In C if you start a snippet you press Tab to cycle through the snippet elements and press Enter to complete and exit the
  • 在 Java 中访问包私有字段

    探究 Android API 源代码 有FileDescriptor与数据成员descriptor没有访问修饰符 int descriptor 然后就是上课了FileOutputStream构造一个新的 FileDescriptor 并分配
  • 使用 SQL Server 2016 时态表查询已删除记录的最佳方法是什么?

    我正在查看 SQL Server 2016 时态表 找不到任何有效的方法来查询现在已删除的所有历史记录 我不喜欢软删除或移动到 已删除项目表 因为我觉得临时表是多余的 这可以通过时态表以有效的方式实现吗 时态表旨在为您提供数据的时间点视图