Trong SQL Server, bạn có thể truy vấn sys.filegroups
chế độ xem danh mục hệ thống để trả về danh sách tất cả các nhóm tệp cho cơ sở dữ liệu hiện tại.
Dạng xem này chứa một hàng cho mỗi không gian dữ liệu là một nhóm tệp. Nói cách khác, kết quả của bạn chứa một hàng cho mỗi nhóm tệp.
Ví dụ 1 - Sử dụng Cơ sở dữ liệu WideWorldImporters
Đây là một ví dụ để chứng minh. Ví dụ này sử dụng cơ sở dữ liệu mẫu WideWorldImporters do Microsoft cung cấp.
SỬ DỤNG WideWorldImporters; SELECT data_space_id, name, type_descFROM sys.filegroups;
Kết quả:
+ ----------------- + ------------------- + -------- ------------------------- + | data_space_id | tên | type_desc || ----------------- + ------------------- + --------- ------------------------ || 1 | CHÍNH THỨC | ROWS_FILEGROUP || 2 | DỮ LIỆU | ROWS_FILEGROUP || 3 | WWI_InMemory_Data | MEMORY_OPTIMIZED_DATA_FILEGROUP | + ----------------- + ------------------- + --------- ------------------------ +
Ví dụ 2 - Chuyển đổi cơ sở dữ liệu
Trong ví dụ này, tôi chuyển sang một cơ sở dữ liệu khác và chạy lại truy vấn.
SỬ DỤNG Nhạc; CHỌN data_space_id, name, type_descFROM sys.filegroups;
Kết quả:
+ ----------------- + --------- + ---------------- + | data_space_id | tên | type_desc || ----------------- + --------- + ---------------- || 1 | CHÍNH THỨC | ROWS_FILEGROUP | + ----------------- + --------- + ---------------- +Cơ sở dữ liệu này (được gọi là Nhạc) chỉ có một nhóm tệp.
Ví dụ 3 - Trả lại Tất cả các Cột
Trong các ví dụ trước, tôi đã chọn các cột cụ thể để trả về. Trong ví dụ này, tôi sử dụng dấu hoa thị (
*
) để trả lại tất cả.CHỌN * TỪ sys.filegroups;Kết quả (sử dụng đầu ra dọc):
tên | PRIMARYdata_space_id | 1 loại | FGtype_desc | ROWS_FILEGROUPis_default | 1is_system | 0filegroup_guid | NULLlog_filegroup_id | NULLis_read_only | 0is_autogrow_all_files | 0Trong trường hợp này, tôi đã sử dụng đầu ra theo chiều dọc để hiển thị kết quả theo chiều dọc (để bạn không bị buộc phải cuộn theo chiều ngang).
Ví dụ 4 - Bao gồm Đường dẫn Tệp
Bạn có thể tham gia
sys.database_files
xem để trả về đường dẫn tệp vật lý.SELECTdf.name AS [Tên tệp DB], df.size / 128 AS [Kích thước tệp (MB)], fg.name AS [Tên nhóm tệp], df.physical_name AS [Đường dẫn tệp] FROM sys.database_files AS dfINNER THAM GIA sys.filegroups NHƯ fgON df.data_space_id =fg.data_space_id;Kết quả (sử dụng đầu ra dọc):
Tên tệp DB | Kích thước tập tin nhạc (MB) | 8Tên nhóm tập tin | PRIMARYFile Path | /var/opt/mssql/data/Music.mdfNhóm tệp CHÍNH là nhóm tệp mặc định chứa tệp dữ liệu và tệp nhật ký, trừ khi bạn chỉ định một nhóm tệp khác. Xem Cách thêm nhóm tệp vào cơ sở dữ liệu máy chủ SQL để tạo nhóm tệp mới.