我正在使用遗留应用程序,意外惊喜,旁边没有关于命名对话或所有数据结构的有用文档。
数据库中有类似的命名表,其中一个以HX结尾。这对任何人的数据库体验都有意义吗?
数据似乎是复制的,所以我认为它是一种历史表,但我只是想确保在我避免填充它之前。
先谢谢。
科里
答案 0 :(得分:1)
我以前见过这个,但我不认为它的用法是任何标准的一部分。当我看到它被用于前缀表(hx_ReportingUsage)时,它存储了有关历史索引使用情况的信息。类似于this article talks的内容。
同样,我认为这只是一个内部命名约定。您最好的选择可能是搜索所有存储过程,UDF和您有权访问的代码以查找表名,看看您是否可以将它的使用方式拼凑起来。
如果您使用的是SQL Server,则可以使用此查询在存储过程中查找文本:
SELECT OBJECT_NAME(id)
FROM syscomments
WHERE [text] LIKE '%foobar%'
AND OBJECTPROPERTY(id, 'IsProcedure') = 1
GROUP BY OBJECT_NAME(id)
答案 1 :(得分:0)
在我遇到过的几个地方,它与历史表有关。它取决于系统。我见过这个主要是在Oil&天然气世界,与其他行业不同。
我不应该只是假设情况就是这样。如果有可能,我会进行依赖搜索,以确定是否有任何依赖于表的脚本 - 如果它们是历史表,您可能会找到一个复制过程或触发某个地方以保持它们的填充。
查看sp_depends
,看看是否可以说明问题。
Exec sp_depends 'table_name_hx'
你应该得到一个列表,列出所有引用它的对象以及引用的对象类型。
答案 2 :(得分:0)
它可能来自医学领域。它们通常有缩写,例如Rx用于处方,Sx用于症状等.Hx是病史:http://en.wikipedia.org/wiki/Medical_history。这可能已经进入其他领域甚至数据库。