我试图通过脚本列出并删除数据库中的所有FileTables。
从sys.filetables中选择不返回FileTable所属的架构,而从INFORMATION_SCHEMA.TABLES中选择并不表示表是否为filetable。
我不希望在这两个表之间进行连接来查找公共名称,因为在FileTable和正则表具有相同名称的情况下,这不是一个通用解决方案。
有人知道要列出所有FileTables以及他们所属的schema的查询吗?
发布于 2015-12-27 17:35:47
sys.filetables公开object_id。这应该足以使用内置的OBJECT_NAME和OBJECT_SCHEMA_NAME找到对象名称和模式。
SELECT
OBJECT_SCHEMA_NAME(object_id) as schema_name,
OBJECT_NAME(object_id) as table_name,
*
FROM sys.filetables;发布于 2015-12-27 17:28:45
尝试使用SYS.TABLES
+--------------+-----------+-------------------------+
|Column name |Data type |Description |
+--------------+-----------+-------------------------+
|is_filetable |bit |1 = Table is a FileTable |
+--------------+-----------+-------------------------+查询:
SELECT Schema_Name = s.NAME,
Filetable_Name = t.NAME
FROM sys.tables t
JOIN sys.schemas s
ON t.[schema_id] = s.[schema_id]
WHERE t.is_filetable = 1 https://stackoverflow.com/questions/34482910
复制相似问题