Teilen über


FILE_IDEX (Transact-SQL)

Gilt für: SQL Server Azure SQL Managed Instance

Diese Funktion gibt die Datei-ID für den angegebenen logischen Dateinamen der Daten-, Protokoll- oder Volltextdatei in der aktuellen Datenbank zurück.

Transact-SQL-Syntaxkonventionen

Syntax

FILE_IDEX ( file_name )  

Argumente

file_name
Ein Ausdruck vom Typ sysname, der den Datei-ID-Wert „FILE_IDEX“ für den Namen der Datei zurückgibt.

Rückgabetypen

int

NULL bei Fehler

Hinweise

file_name entspricht dem logischen Dateinamen, der in der Spalte name in den Katalogsichten sys.master_files oder sys.database_files angezeigt wird.

Verwenden Sie FILE_IDEX in einer SELECT-Liste, einer WHERE-Klausel oder an einer beliebigen Stelle, an der ein Ausdruck zulässig ist. Weitere Informationen finden Sie unter Ausdrücke (Transact-SQL).

Beispiele

A. Abrufen der Datei-ID einer angegebenen Datei

In diesem Beispiel wird die Datei-ID für die Datei AdventureWorks_Data zurückgegeben.

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

Hier sehen Sie das Ergebnis.

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

B. Abrufen der Datei-ID, wenn der Dateiname nicht bekannt ist

In diesem Beispiel wird die Datei-ID für die Protokolldatei AdventureWorks zurückgegeben. Der Transact-SQL-Codeausschnitt (T-SQL) wählt den logischen Dateinamen aus der Katalogsicht sys.database_files aus, wobei der Dateityp 1 entspricht (Protokoll).

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

Hier sehen Sie das Ergebnis.

File ID   
-------   
2  

C. Abrufen der Datei-ID einer Volltextkatalogdatei

In diesem Beispiel wird die Datei-ID einer Volltextdatei zurückgegeben. Der Transact-SQL-Codeausschnitt (T-SQL) wählt den logischen Dateinamen aus der Katalogsicht sys.database_files aus, wobei der Dateityp 4 entspricht (Volltextdatei). Dieser Code gibt NULL zurück, wenn kein Volltextkatalog vorhanden ist.

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

Siehe auch

Metadatenfunktionen (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)