FILE_IDEX (Transact-SQL)

Dotyczy:SQL ServerAzure SQL Managed Instance

Funkcja ta zwraca numer identyfikacyjny pliku (ID) dla określonej nazwy logicznej danych, logu lub pliku pełnego tekstu bieżącej bazy danych.

Transact-SQL konwencje składni

Syntax

FILE_IDEX ( file_name )  

Arguments

file_name
Wyrażenie typu sysname , które zwraca wartość ID pliku 'FILE_IDEX' jako nazwę pliku.

Typy zwracane

int

NULL na błędzie

Remarks

file_name odpowiada logicznej nazwie pliku wyświetlanej w kolumnie nazwy w widokach katalogowych sys.master_files lub sys.database_files .

Użyj FILE_IDEX w liście SELECT, w klauzuli WHERE lub w dowolnym miejscu, gdzie można użyć wyrażenia. Aby uzyskać więcej informacji, zobacz Wyrażenia (Transact-SQL).

Examples

A. Pobieranie identyfikatora pliku określonego pliku

Ten przykład zwraca identyfikator pliku pliku AdventureWorks_Data .

USE AdventureWorks2022;  
GO  
SELECT FILE_IDEX('AdventureWorks2022_Data') AS 'File ID';  
GO  

Oto zestaw wyników.

File ID   
-------   
1  
(1 row(s) affected)  

B. Pobieranie identyfikatora pliku, gdy nazwa pliku nie jest znana

Ten przykład zwraca identyfikator AdventureWorks pliku loga. Fragment kodu Transact-SQL (T-SQL) wybiera logiczną nazwę pliku w widoku katalogowym sys.database_files , gdzie typ pliku odpowiada 1 (log).

USE AdventureWorks2022;  
GO  
SELECT FILE_IDEX((SELECT TOP (1) name FROM sys.database_files WHERE type = 1)) AS 'File ID';  
GO  

Oto zestaw wyników.

File ID   
-------   
2  

C. Pobieranie identyfikatora pliku katalogowego pełnego tekstu

Ten przykład zwraca identyfikator pliku pełnego tekstu. Fragment kodu T-SQL wybiera logiczną nazwę pliku w widoku sys.database_files katalogowym, gdzie typ pliku jest równoważny 4 (pełny tekst). Ten kod zwraca 'NULL', jeśli katalog pełnotekstowy nie istnieje.

SELECT FILE_IDEX((SELECT name FROM sys.master_files WHERE type = 4))  
AS 'File_ID';