我可以从 SQL Server 读取元数据来了解最后更改的行/表吗?

2024-06-20

我们有一个数据库hundreds的桌子。

有没有某种metaSQL Server 中的数据源,我可以以编程方式查询以获取名称最后更改表和行?

或者我们是否需要实施这个我们自己每个表中的字段称为上次更改日期时间, etc.?


就查明表最后一次修改的时间而言,有一种偷偷摸摸的方法可以访问此信息,但它不会告诉您哪一行被更改,只是何时更改。 SQL Server 维护索引使用统计信息,并记录索引上的最后一次查找/扫描/查找和更新。它还按用户/系统对此进行划分。

仅过滤用户表,任何插入/更新/删除都会导致索引上发生更新,并且 DMV 将使用此新信息进行更新。

select o.name, 
max(u.last_user_seek) as LastSeek, 
max(u.last_user_scan) as LastScan, 
max(u.last_user_lookup) as LastLookup,
max(u.last_user_update) as LastUpdate 
from sys.dm_db_index_usage_stats u
inner join sys.objects o on  o.object_id = u.object_id
where o.type = 'U' and o.type_desc = 'USER_TABLE'
group by o.name

然而,这并不理想,堆一开始就没有索引——而且我从未考虑过将它用于生产代码作为跟踪机制,仅作为取证工具来检查明显的更改。

如果您想要正确的行级别更改跟踪,您必须内置它,或者查看 SQL 2008 特定的更改数据捕获功能。

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

我可以从 SQL Server 读取元数据来了解最后更改的行/表吗? 的相关文章

  • SQL Server:如何从递归函数内执行更新?

    我有一个递归标量函数 需要根据它返回的值更新另一个表中的记录 但是函数中不允许使用 UPDATE 语句 如何从函数内更新表 不允许使用 UPDATE 语句 功能 这就是规则 函数不允许有任何数据更改的副作用 您必须使用存储过程来UPDATE
  • SQL Server 2008-获取表约束

    你能帮我构建一个查询 检索所有表中的约束 每个表中的约束计数 并显示NULL对于没有任何约束的表 这是我到目前为止所拥有的 Select SysObjects Name As Constraint Name Tab Name as Tabl
  • 无法加入交易

    我有问题 我已经在 Windows 中设置了 1 个 sql 服务器 SQL Server 2014 Express 并在另一台服务器的 Linux 中设置了 1 个 Oracle 数据库服务器 11g 现在我想通过链接服务器将数据从SQL
  • SQL Server 之间的日期 LIKE

    请帮我如何插入LIKE 之间的日期 例子是 SELECT FROM table WHERE Date BETWEEN startDate AND endDate 所以在这段代码中我应该把LIKE这样数据就会出现 例如 如果我这样设置 SEL
  • 使用 Python 将 XML 文件存储到 MS SQL DB 中

    我的 MSSQL DB 表包含以下结构 create table TEMP MyXMLFile XML 使用 Python 我尝试将本地存储的 XML 文件加载到 MS SQL DB 不需要 XML 解析 以下是Python代码 impor
  • 更改 SQL Server 中的身份种子(永久!)

    有没有办法永久更改身份列的身份种子 使用 DBCC CHECKIDENT 似乎只是设置了最后一个值 如果表被截断 所有值都会重置 dbcc checkident Test SeedIdent reseed 1000 select name
  • CDC 已启用,但未填充 cdc.dbo_CT 表

    我已使用以下步骤启用 CDC exec sys sp cdc enable db exec sys sp cdc enable table source schema N dbo source name N table name role
  • 聚集索引对数据库性能的影响

    我最近参与了一个新的软件项目 该项目使用 SQL Server 2000 进行数据存储 在审查该项目时 我发现其中一个主表在其主键上使用聚集索引 该索引由四列组成 Sequence numeric 18 0 Date datetime Cl
  • 查找每个客户组的最新帐户

    我有一个包含客户信息的表 每个客户都会分配一个客户 ID 他们的 SSN 他们在开设更多帐户时会保留该 ID 两个客户可能使用同一个帐户 每个客户都有自己的 ID 帐号不按日期排序 我想找到每个客户或客户组的最新帐户 如果两个客户曾经一起使
  • 插入 SQL Server 视图时使用 @@identity 或输出?

    请原谅我 我对 StackOverflow 和 SQL 都是新手 Tl dr 使用时 identity 或任何其他选项 例如scope identity或输出变量 是否也可以使用视图 这是一个使用存储过程的示例 identity SNIP
  • SQL Server 截断 XML 返回值

    我正在调试我们组织中现有的存储过程 它尝试返回一个 2047 字节长的 XML 字符串 使用 for XML auto 当我在 SSMS 中运行存储过程时 返回值出现在结果窗口中 如果我单击该值 显示为超链接 则会打开一个新窗口并显示整个字
  • 我应该在删除数据之前禁用聚集索引吗?

    我知道这已经像任何事情一样被讨论过 但找不到我可以接受的可靠答案 假设我有一个有100亿条记录的表 需要删除where子句中带有标识列的记录 我应该选择哪个选项 选项1 禁用索引 这将节省删除后重新排列索引的开销 但会花费更长的时间来搜索需
  • 如何消除错误 3002?

    假设我在 SQL Server 2008 中有以下表定义 CREATE TABLE Person PersonId INT IDENTITY NOT NULL PRIMARY KEY Name VARCHAR 50 NOT NULL Man
  • 开发和生产 SQL Server 之间使用不同的排序规则会出现哪些问题?

    盘问 无法更新 sys columns 还有其他方法吗 https stackoverflow com questions 4018347 unable to update sys columns any other approach含糊地
  • 查看tomcat服务器的连接数

    我在 Tomcat Server 5 5 17 上部署了一个 Java Java EE Web 应用程序 我想知道连接到服务器的客户端数量 我们怎样才能找到它呢 最可靠的方法是搜索ip addr of srv port in netstat
  • 即使在不活动状态下,Hangfire 也会继续运行 SQL 查询

    我正在开发一个 ASP net MVC 5 网站 并使用 Hangfire 来安排一些任务 在本例中每 3 分钟一次 我知道一个事实是 运行这样的任务 以及与之相关的数据库查询 只需要几秒钟 我面临的问题是 Hangfire 似乎让我的 S
  • 如何在 Windows 7 - 64 位中安装 IBM db2 ODBC 驱动程序?

    我需要从本地 SQL Server 2008 R2 连接到远程 DB2 我不想使用链接服务器 因此 我正在搜索下载并尝试安装 IBM DB2 驱动程序 因为主机集成服务器附带的用于 DB2 的 Microsoft ODBC 驱动程序非常昂贵
  • SQL Server 数据归档解决方案

    我正在寻找一种解决方案来存档数据库中存在的数据 我的数据库是 SQL Server 2008 大约有 250 个表 我搜索网络并找到以下链接 http www dbazine com sql sql articles charran13 h
  • 使用存储过程访问数据可以提供哪些安全优势?

    我看到一些指南建议您通过存储过程对所有数据访问进行分层来保护数据库 我知道对于 SQL Server 您可以保护表甚至列免受 CRUD 操作的影响 例如 Logged in as sa USE AdventureWorks GRANT SE
  • 使用 sql 查询选择最近 30 天

    我正在查找过去 30 天内周一 周二 周三 周四 周五 周六 周日的数量 我可以在没有实际数据库表的情况下选择最近 30 天的日期和星期几吗 就像是 SELECT everything between convert date GETDAT

随机推荐

  • Kivy 中简单的 30 秒倒计时器

    我想在单击按钮后立即启动 30 秒计时器 我的尝试 usr bin kivy import kivy kivy require 1 7 2 from random import random from kivy app import App
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • Laravel 中只向登录用户显示按钮

    如果我以 John 身份登录 如何才能只显示 John 的红色按钮而不显示 Susan 的红色按钮 测试系统环境 Win10 Laravel5 4 Mysql5 7 19 table class table table responsive
  • Symfony 4:添加 Twig_Extension_StringLoader

    在我的 Symfony 4 项目中 我有一个包含 HTML 的变量 我尝试使用 Twig 显示该变量 我想使用template from string 功能但我必须添加Twig Extension StringLoader到 Twig 环境
  • 与有效正则表达式匹配的正则表达式

    是否存在与有效正则表达式匹配的正则表达式 我知道正则表达式有多种风格 其中一种就可以了 是否存在与有效正则表达式匹配的正则表达式 根据定义 它非常简单 No 所有正则表达式的语言是no regular语言 只需查看嵌套括号 因此不可能有re
  • 在一个平台上,对于所有数据类型,所有数据指针的大小是否相同? [复制]

    这个问题在这里已经有答案了 Are char int long 甚至long long 大小相同 在给定平台上 不能保证它们的大小相同 尽管在我有使用经验的平台上它们通常是相同的 C 2011 在线草稿 http www open std
  • 如何使用 Python 3 检查目录是否包含文件

    我到处寻找这个答案但找不到 我正在尝试编写一个脚本来搜索特定的子文件夹 然后检查它是否包含任何文件 如果包含 则写出该文件夹的路径 我已经弄清楚了子文件夹搜索部分 但检查文件却难倒了我 我发现了有关如何检查文件夹是否为空的多个建议 并且我尝
  • 如何启用 vstest.console.exe 日志记录?

    我试图查看在 Visual Studio 2013 中运行测试时究竟执行了什么 vstest 命令 如何启用 vstest console exe 日志记录 执行的命令是带有相关参数的 VSTest Console exe 当您运行测试时
  • 如何判断 jquery 对话框是否打开? [复制]

    这个问题在这里已经有答案了 寻找通用案例解决方案来确定当前是否打开任何 jquery 对话框 有多个 试过 ui dialog content dialog isOpen true ui dialog dialog isOpen true
  • 使用加权行概率从 PostgreSQL 表中选择随机行

    输入示例 SELECT FROM test id percent 1 50 2 35 3 15 3 rows 你会如何编写这样的查询 平均 50 的时间我可以获得 id 1 的行 35 的时间 id 2 的行 15 的时间 id 3 的行
  • 当直接从 usdz 文件而不是 Reality Composer 文件加载模型时,如何在 RealityKit 中渲染阴影?

    将模型直接从 usdz 文件添加到场景锚点时 模型下方不会出现接地阴影 如果您将模型导入 RealityComposer 并添加 RealityComposer 场景 则会出现这些 但是 您可以在不使用 RC 的情况下启用接地阴影吗 我尝试
  • 具有交替类型的可变参数模板参数包

    我想知道是否可以使用参数包捕获交替参数模式 例如 template
  • jQuery 获取元素内的鼠标位置

    我希望制作一个控件 用户可以在 div 内单击 然后拖动鼠标 然后松开鼠标以指示他们想要的内容有多长 这是针对日历控件的 因此用户将指示特定事件的时间长度 看起来最好的方法是在父 div 上注册一个 mousedown 事件 而父 div
  • 子域中的 Rails url 助手 - 删除子域

    我网站上的用户可以拥有子域 例如 他们的页面网址是 name example com 登录的用户可以查看更多用户信息 因此在用户的显示页面上 我有一个使用以下代码生成的链接 user url user subdomain gt false
  • Dagger 2 没有生成我的组件类

    我正在使用 Dagger 2 创建我的依赖注入 几个小时前它还在工作 但现在不再生成组件 这是我创建组件的地方 public class App extends Application CacheComponent mCacheCompon
  • AWS - 有没有办法“挂钩”第一次创建联合身份的时间?

    我有一个 Cognito 身份池 用于对我的前端用户进行身份验证 并在我的应用程序中授予他们某些权限 但是 我在授予这些用户访问 IoT 的权限时遇到了问题 其中涉及调用 Lambda 调用iot addPrincipalPolicy 一旦
  • 找到一个数字所属的一组范围

    我有一个 200k 行的数字范围列表 例如开始位置 停止位置 该列表包括除了非重叠的重叠之外的所有类型的重叠 列表看起来像这样 3 5 10 30 15 25 5 15 25 35 我需要找到给定数字所属的范围 并对 100k 个数字重复该
  • 如何在 PHP 中从 IP 地址/国家/地区名称查找时区 ID?

    谁能告诉我 PHP 中是否有任何方法可以从 IP 地址或国家 地区名称获取时区区域 例如 亚洲 加尔各答 描述 我正在尝试根据他 她的国家 地区设置用户时区 我从他的 IP 地址获取用户所在国家 地区 但我需要该国家 地区的时区区域 例如
  • VBA将二进制图像转换为网页的base64编码字符串

    我正在尝试读取 JPG 文件并将该文件转换为 base64 编码的字符串 该字符串可用作网页上的嵌入 jpeg 我在网上发现了两个在 VBA 中进行 Base64 编码 解码的函数 它们似乎被广泛接受 编码 解码过程产生了我的原始二进制字符
  • 我可以从 SQL Server 读取元数据来了解最后更改的行/表吗?

    我们有一个数据库hundreds的桌子 有没有某种metaSQL Server 中的数据源 我可以以编程方式查询以获取名称最后更改表和行 或者我们是否需要实施这个我们自己每个表中的字段称为上次更改日期时间 etc 就查明表最后一次修改的时间