FILE_IDEX (Transact-SQL)
Zwraca numer identyfikacyjny (ID) plik określony logiczną nazwę pliku danych, dziennika lub pliku tekstowego w bieżącej bazie danych.
Składnia
FILE_IDEX ( file_name )
Argumenty
- file_name
To wyrażenie typu sysname , reprezentuje nazwę pliku, dla którego ma zostać zwrócona pliku identyfikatora.
Zwracane typy
int
NULLo błędzie
Uwagi
file_nameodpowiada nazwie pliku logicznego, wyświetlane w nazwy kolumna w sys.master_files lub sys.database_files widoki wykazu.
FILE_IDEX mogą być używane w liście select, WHERE klauzulalub dowolnym wyrażenie jest dozwolone.Aby uzyskać więcej informacji, zobacz Wyrażenia języka Transact-SQL).
Przykłady
A.Pobieranie identyfikatora pliku określonego pliku.
Poniższy przykład zwraca identyfikator pliku AdventureWorks2008R2_Data pliku.
USE AdventureWorks2008R2;
GO
SELECT FILE_IDEX('AdventureWorks2008R2_Data')AS 'File ID';
GO
Oto zestaw wyników.
File ID
-------
1
(1 row(s) affected)
B.Pobieranie identyfikatora pliku, kiedy nazwa pliku nie jest znana.
Poniższy przykład zwraca identyfikator pliku AdventureWorks2008R2 pliku dziennika, wybierając nazwę pliku logicznego, z sys.database_files Widok wykazu, których typem pliku jest równa 1 (dziennika).
USE AdventureWorks2008R2;
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 plik wykaz pełnotekstowy
Poniższy przykład zwraca identyfikator pliku pliku tekstowego, wybierając nazwę pliku logicznego, z sys.database_files Widok wykazu, których typem pliku jest równa 4 (pełny tekst).W tym przykładzie zostanie zwrócona wartość NULL, jeśli wykaz pełnotekstowy nie istnieje.
SELECT FILE_IDEX((SELECT name FROM sys.master_files WHERE type = 4))
AS 'File_ID';