FILE_IDEX (Transact-SQL)
返回当前数据库中的数据、日志或全文文件的指定逻辑文件名的文件标识 (ID) 号。
适用范围:SQL Server(SQL Server 2008 到当前版本)。 |
语法
FILE_IDEX ( file_name )
参数
- file_name
一个 sysname 类型的表达式,表示要返回文件 ID 的文件的名称。
返回类型
int
NULL on error
注释
file_name 对应于 sys.master_files 或 sys.database_files 目录视图的 name 列中所显示的逻辑文件名。
FILE_IDEX 可以在选择列表、WHERE 子句和允许使用表达式的任何地方使用。 有关详细信息,请参阅 表达式(Transact-SQL)。
示例
A.检索指定文件的文件 ID
以下示例返回 AdventureWorks_Data 文件的文件 ID。
USE AdventureWorks2012;
GO
SELECT FILE_IDEX('AdventureWorks2012_Data')AS 'File ID';
GO
下面是结果集:
File ID
-------
1
(1 row(s) affected)
B.在文件名未知时检索文件 ID
以下示例通过从文件类型等于 1(日志)的 sys.database_files 目录视图中选择逻辑文件名来返回 AdventureWorks 日志文件的文件 ID。
USE AdventureWorks2012;
GO
SELECT FILE_IDEX((SELECT TOP(1)name FROM sys.database_files
WHERE type = 1))AS 'File ID';
GO
下面是结果集:
File ID
-------
2
C.检索全文目录文件的文件 ID
以下示例通过从文件类型等于 4(全文本)的 sys.database_files 目录视图中选择逻辑文件名来返回全文本文件的文件 ID。 如果全文目录不存在,则此示例将返回 NULL。
SELECT FILE_IDEX((SELECT name FROM sys.master_files WHERE type = 4))
AS 'File_ID';