sql >> データベース >  >> RDS >> Sqlserver

SQL ServerでFILEPROPERTY()を使用する方法

    SQL Serverでは、FILEPROPERTY()を使用できます。 指定されたデータベースファイルのプロパティ値を返す関数。戻り値は1または0(入力が無効な場合はNULL)です。

    これを使用するには、ファイルの論理ファイル名と返されるプロパティ値を指定します。

    例1-基本的なクエリ

    実例を示します。

    USE WideWorldImporters;
    SELECT FILEPROPERTY('WWI_Primary', 'SpaceUsed') AS Result;
    

    結果:

    +----------+
    | Result   |
    |----------|
    | 1152     |
    +----------+
    

    SpaceUsedによって返される値 プロパティは、ファイルに割り当てられたページ数です。したがって、この例は、WWI_Primaryファイルに1152ページが割り当てられていることを示しています。

    ログファイルを確認すると、別の結果が得られます:

    SELECT FILEPROPERTY('WWI_Log', 'SpaceUsed') AS Result;
    

    結果:

    +----------+
    | Result   |
    |----------|
    | 14762    |
    +----------+
    

    例2–IDからファイルの名前を取得する

    ファイル名がわからないがIDはわかっている場合は、FILE_NAME()を使用できます。 IDに基づいてファイルの名前を返す関数。

    SELECT FILEPROPERTY(FILE_NAME(3), 'SpaceUsed') AS Result;
    

    結果:

    +----------+
    | Result   |
    |----------|
    | 52872    |
    +----------+
    

    ここでも、ファイル名が返されます:

    SELECT 
      FILE_NAME(3) AS [File Name],
      FILEPROPERTY(FILE_NAME(3), 'SpaceUsed') AS [Space Used];
    

    結果:

    +--------------+--------------+
    | File Name    | Space Used   |
    |--------------+--------------|
    | WWI_UserData | 52872        |
    +--------------+--------------+
    

    例3–すべてのプロパティ値を返す

    執筆時点では、FILEPROPERTY() 4つのプロパティ値を受け入れます。

    WWI_Logの4つのプロパティ値すべてを返す例を次に示します。 ファイル。

    DECLARE @file_name varchar(50) = 'WWI_Log';
    SELECT 
      FILEPROPERTY(@file_name, 'IsReadOnly') AS IsReadOnly,
      FILEPROPERTY(@file_name, 'IsPrimaryFile') AS IsPrimaryFile,
      FILEPROPERTY(@file_name, 'IsLogFile') AS IsLogFile,
      FILEPROPERTY(@file_name, 'SpaceUsed') AS SpaceUsed;
    

    結果:

    +--------------+-----------------+-------------+-------------+
    | IsReadOnly   | IsPrimaryFile   | IsLogFile   | SpaceUsed   |
    |--------------+-----------------+-------------+-------------|
    | 0            | 0               | 1           | 14763       |
    +--------------+-----------------+-------------+-------------+
    

    例4–存在しないファイル

    存在しないファイルを指定すると、次のようになります。

    SELECT FILEPROPERTY('OOPS', 'SpaceUsed') AS Result;
    

    結果:

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

    例5–無効なプロパティ値

    ファイルが正しい場合も同じ結果が得られますが、無効なプロパティ値を指定しています。

    SELECT FILEPROPERTY('WWI_Log', 'Oops') AS Result;
    

    結果:

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

    1. MySQLで文字列を実行することは可能ですか?

    2. PostgreSQLでSSLを有効にする方法

    3. PostgreSQL:文字列を日付にキャストDD / MM / YYYY

    4. T-SQL:最も近い15分間隔に丸めます