Compartilhar via


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.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

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';