Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Cara Menggunakan FILEPROPERTY() di SQL Server

Di SQL Server, Anda dapat menggunakan FILEPROPERTY() fungsi untuk mengembalikan nilai properti untuk file database tertentu. Nilai yang dikembalikan adalah 1 atau 0 (atau NULL jika input tidak valid).

Untuk menggunakannya, berikan nama file logis file dan nilai properti yang ingin Anda kembalikan.

Contoh 1 – Kueri Dasar

Berikut ini contoh untuk didemonstrasikan.

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

Hasil:

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

Nilai yang dikembalikan oleh SpaceUsed properti adalah jumlah halaman yang dialokasikan dalam file. Oleh karena itu, contoh ini memberi tahu kita bahwa file WWI_Primary memiliki 1152 halaman yang dialokasikan.

Jika saya memeriksa file log, saya mendapatkan hasil yang berbeda:

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

Hasil:

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

Contoh 2 – Mendapatkan Nama File dari ID-nya

Jika Anda tidak yakin dengan nama filenya, tetapi Anda tahu ID-nya, Anda dapat menggunakan FILE_NAME() berfungsi untuk mengembalikan nama file berdasarkan ID-nya.

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

Hasil:

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

Ini dia lagi dengan nama file juga dikembalikan:

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

Hasil:

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

Contoh 3 – Mengembalikan Semua Nilai Properti

Pada saat penulisan, FILEPROPERTY() menerima empat nilai properti.

Berikut adalah contoh yang mengembalikan keempat nilai properti untuk WWI_Log berkas.

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;

Hasil:

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

Contoh 4 – File Tidak Ada

Inilah yang terjadi jika Anda menentukan file yang tidak ada.

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

Hasil:

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

Contoh 5 – Nilai Properti Tidak Valid

Kami mendapatkan hasil yang sama ketika file benar, tetapi kami menetapkan nilai properti yang tidak valid.

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

Hasil:

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server - gabung dalam saat memperbarui

  2. Bagaimana cara menyimpan direktori / hierarki / struktur pohon dalam database?

  3. SQL Server - Hubungan Pendek Permintaan?

  4. Bagaimana cara memperbarui tabel besar dengan jutaan baris di SQL Server?

  5. Panggilan ODBC Gagal dengan prosedur tersimpan - Lewati kueri