Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment utiliser FILEGROUPPROPERTY() dans SQL Server

Dans SQL Server, vous pouvez utiliser le FILEGROUPPROPERTY() pour renvoyer la valeur de propriété du groupe de fichiers pour un nom et une valeur de groupe de fichiers spécifiés. La valeur renvoyée est soit 1, soit 0 (ou NULL si l'entrée n'est pas valide).

Pour l'utiliser, indiquez le nom du groupe de fichiers et la valeur de la propriété que vous souhaitez renvoyer.

Exemple 1 – Requête de base

Voici un exemple pour illustrer.

USE WideWorldImporters;
SELECT FILEGROUPPROPERTY('PRIMARY', 'IsDefault') AS Result;

Résultat :

+----------+
| Result   |
|----------|
| 0        |
+----------+

La valeur de 0 signifie qu'il ne s'agit pas du groupe de fichiers par défaut pour cette base de données.

Si je change de base de données, je peux voir que le PRIMARY le groupe de fichiers est le groupe de fichiers par défaut pour cette base de données :

USE Music;
SELECT FILEGROUPPROPERTY('PRIMARY', 'IsDefault') AS Result;

Résultat :

Changed database context to 'Music'.
+----------+
| Result   |
|----------|
| 1        |
+----------+

Exemple 2 - Renvoyer toutes les valeurs de propriété

Au moment de la rédaction, FILEGROUPPROPERTY() accepte trois valeurs de propriété.

Voici un exemple qui renvoie les trois valeurs de propriété pour USERDATA groupe de fichiers.

SELECT 
  FILEGROUPPROPERTY('USERDATA', 'IsReadOnly') AS FG_1,
  FILEGROUPPROPERTY('USERDATA', 'IsUserDefinedFG') AS FG_2,
  FILEGROUPPROPERTY('USERDATA', 'IsDefault') AS FG_3;

Résultat :

+--------+--------+--------+
| FG_1   | FG_2   | FG_3   |
|--------+--------+--------|
| 0      | 1      | 1      |
+--------+--------+--------+

Exemple 3 – Groupe de fichiers inexistant

Voici ce qui se passe si vous spécifiez un groupe de fichiers qui n'existe pas.

SELECT FILEGROUPPROPERTY('OOPS', 'IsDefault') AS Result;

Résultat :

+----------+
| Result   |
|----------|
| NULL     |
+----------+

Exemple 4 – Valeur de propriété non valide

Nous obtenons le même résultat lorsque le groupe de fichiers est correct, mais nous spécifions une valeur de propriété non valide.

SELECT FILEGROUPPROPERTY('USERDATA', 'OOPS') AS Result;

Résultat :

+----------+
| Result   |
|----------|
| NULL     |
+----------+

Renvoyer le nom du groupe de fichiers

Si vous avez l'ID du groupe de fichiers mais pas son nom, vous pouvez utiliser FILEGROUP_NAME() pour renvoyer le nom d'un groupe de fichiers en fonction de son ID.

Renvoyer tous les groupes de fichiers

Si vous voulez retourner tous groupes de fichiers pour une base de données donnée, consultez Comment renvoyer tous les groupes de fichiers dans SQL Server.

Créer un groupe de fichiers

Si vous souhaitez créer un nouveau groupe de fichiers, consultez Comment ajouter un groupe de fichiers dans SQL Server.