列出 Firebird 数据库所有未使用的域
List all unused domains for a Firebird database
有没有一种快速的方法可以列出为数据库定义但实际上没有被任何字段使用的所有 Firebird 域?我有一个包含许多表和许多域的大型数据库,似乎其中很多都不再使用了,所以我想是时候进行清理了!
我认为这可以通过查询 RDB$...
系统表来实现,但我不确定该怎么做。
SELECT
f.rdb$field_name
FROM
rdb$fields f
LEFT JOIN rdb$relation_fields rf
ON rf.rdb$field_source = f.rdb$field_name
WHERE
rf.rdb$field_name IS NULL
AND
COALESCE(f.rdb$system_flag, 0) = 0
有没有一种快速的方法可以列出为数据库定义但实际上没有被任何字段使用的所有 Firebird 域?我有一个包含许多表和许多域的大型数据库,似乎其中很多都不再使用了,所以我想是时候进行清理了!
我认为这可以通过查询 RDB$...
系统表来实现,但我不确定该怎么做。
SELECT
f.rdb$field_name
FROM
rdb$fields f
LEFT JOIN rdb$relation_fields rf
ON rf.rdb$field_source = f.rdb$field_name
WHERE
rf.rdb$field_name IS NULL
AND
COALESCE(f.rdb$system_flag, 0) = 0