FILE_IDEX (Transact-SQL)
Retorna o número de identificação (ID) de arquivo para o nome de arquivo lógico especificado de dados, log ou arquivo de texto completo no banco de dados atual.
Sintaxe
FILE_IDEX ( file_name )
Argumentos
- file_name
É uma expressão do tipo sysname que representa o nome do arquivo para o qual a ID de arquivo deve ser retornada.
Tipos de retorno
int
NULL em erro
Comentários
file_name corresponde ao nome de arquivo lógico exibido na coluna de nome nos modos de exibição de catálogo sys.master_files ou sys.database_files.
FILE_IDEX pode ser usado em uma lista de seleção, cláusula WHERE ou em qualquer local em que uma expressão for permitida. Para obter mais informações, consulte Expressões (Transact-SQL).
Exemplos
A. Recuperando a ID de arquivo de um arquivo especificado
O exemplo a seguir retorna a ID de arquivo para o arquivo AdventureWorks2008R2_Data.
USE AdventureWorks2008R2;
GO
SELECT FILE_IDEX('AdventureWorks2008R2_Data')AS 'File ID';
GO
Aqui está o conjunto de resultados.
File ID
-------
1
(1 row(s) affected)
B. Recuperando a ID de arquivo quando o nome de arquivo não é conhecido
O exemplo a seguir retorna a ID de arquivo do arquivo de log AdventureWorks2008R2 selecionando o nome de arquivo lógico na exibição de catálogo sys.database_files em que o tipo de arquivo é igual a 1 (log).
USE AdventureWorks2008R2;
GO
SELECT FILE_IDEX((SELECT TOP(1)name FROM sys.database_files
WHERE type = 1))AS 'File ID';
GO
Aqui está o conjunto de resultados.
File ID
-------
2
C. Recuperando a ID de arquivo de um arquivo de catálogo de texto completo
O exemplo a seguir retorna a ID de arquivo do arquivo de texto completo selecionando o nome de arquivo lógico na exibição de catálogo sys.database_files em que o tipo de arquivo é igual a 4 (texto completo). Este exemplo retornará NULL se um catálogo de texto completo não existir.
SELECT FILE_IDEX((SELECT name FROM sys.master_files WHERE type = 4))
AS 'File_ID';
Consulte também