FILE_IDEX (Transact-SQL)
Gibt die Datei-ID für den angegebenen logischen Dateinamen der Daten-, Protokoll- oder Volltextdatei in der aktuellen Datenbank zurück.
Syntax
FILE_IDEX ( file_name )
Argumente
- file_name
Ein Ausdruck vom Typ sysname für den Namen der Datei, für die die Datei-ID zurückgegeben werden soll.
Rückgabetypen
int
NULL bei einem Fehler
Hinweise
file_name entspricht dem logischen Dateinamen, der in der name-Spalte in den Katalogsichten sys.master_files oder sys.database_files angezeigt wird.
FILE_IDEX kann in einer SELECT-Liste, in einer WHERE-Klausel oder überall dort verwendet werden, wo ein Ausdruck zulässig ist. Weitere Informationen finden Sie unter Ausdrücke (Transact-SQL).
Beispiele
A. Abrufen der Datei-ID einer angegebenen Datei
Im folgenden Beispiel wird die Datei-ID für die Datei AdventureWorks2008R2_Data zurückgegeben.
USE AdventureWorks2008R2;
GO
SELECT FILE_IDEX('AdventureWorks2008R2_Data')AS 'File ID';
GO
Dies ist das Resultset.
File ID
-------
1
(1 row(s) affected)
B. Abrufen der Datei-ID, wenn der Dateiname unbekannt ist
Im folgenden Beispiel wird die Datei-ID der AdventureWorks2008R2-Protokolldatei zurückgegeben, indem der logische Dateiname in der sys.database_files-Katalogsicht ausgewählt wird, wobei der Dateityp 1 (Protokoll) entspricht.
USE AdventureWorks2008R2;
GO
SELECT FILE_IDEX((SELECT TOP(1)name FROM sys.database_files
WHERE type = 1))AS 'File ID';
GO
Dies ist das Resultset.
File ID
-------
2
C. Abrufen der Datei-ID einer Volltextkatalog-Datei
Im folgenden Beispiel wird die Datei-ID einer Volltextdatei zurückgegeben, indem der logische Dateiname in der sys.database_files-Katalogsicht ausgewählt wird, wobei der Dateityp 4 (Volltext) entspricht. Dieses Beispiel gibt NULL zurück, wenn ein Volltextkatalog nicht vorhanden ist.
SELECT FILE_IDEX((SELECT name FROM sys.master_files WHERE type = 4))
AS 'File_ID';