Partager via


FILE_IDEX (Transact-SQL)

S’applique à : SQL Server Azure SQL Managed Instance

Cette fonction retourne le numéro d'identification (ID) du nom du fichier pour le nom logique spécifié d’un fichier journal, de données ou de texte intégral de la base de données active.

Conventions de la syntaxe Transact-SQL

Syntaxe

FILE_IDEX ( file_name )  

Arguments

file_name
Une expression de type sysname qui retourne la valeur d’ID de fichier 'FILE_IDEX' pour le nom du fichier.

Types de retour

int

NULL en cas d’erreur

Remarques

file_name correspond au nom de fichier logique affiché dans la colonne name des affichages catalogue sys.master_files ou sys.database_files.

Utilisez FILE_IDEX dans une liste SELECT, une clause WHERE, ou à n’importe quel emplacement prenant en charge une expression. Pour plus d’informations, consultez Expressions (Transact-SQL).

Exemples

R. Extraction de l'ID d'un fichier spécifié

Cet exemple retourne l'ID du fichier AdventureWorks_Data.

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

Voici le jeu de résultats obtenu.

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

B. Extraction de l'ID d'un fichier dont le nom est inconnu

Cet exemple retourne l'ID du fichier journal AdventureWorks. L’extrait de code Transact-SQL (T-SQL) sélectionne le nom du fichier logique à partir de l’affichage catalogue sys.database_files, où le type de fichier est égal à 1 (journal).

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

Voici le jeu de résultats obtenu.

File ID   
-------   
2  

C. Extraction de l'ID d'un fichier de catalogue de texte intégral

Cet exemple retourne l’ID de fichier pour un fichier de texte intégral. L’extrait de code T-SQL sélectionne le nom du fichier logique à partir de l’affichage catalogue sys.database_files, où le type de fichier est égal à 4 (texte intégral). Ce code retourne 'NULL' s'il n'existe pas de catalogue de texte intégral.

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

Voir aussi

Fonctions de métadonnées (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)