FULLTEXTCATALOGPROPERTY (Transact-SQL)

Berlaku untuk: SQL Server (semua versi yang didukung) Azure SQL Managed Instance Database Azure SQL

Mengembalikan informasi tentang properti katalog teks lengkap di SQL Server.

tautan topikIkon Konvensi Sintaks Transact-SQL

Sintaks

FULLTEXTCATALOGPROPERTY ('catalog_name' ,'property')  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

Catatan

Properti berikut akan dihapus dalam rilis SQL Server mendatang: LogSize dan PopulateStatus. Hindari menggunakan properti ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan salah satunya.

catalog_name
Adalah ekspresi yang berisi nama katalog teks lengkap.

property
Adalah ekspresi yang berisi nama properti katalog teks lengkap. Tabel mencantumkan properti dan menyediakan deskripsi informasi yang dikembalikan.

Properti Deskripsi
AksenSensitivitas Pengaturan sensitivitas aksen.

0 = Aksen tidak sensitif

1 = Aksen sensitif
IndexSize Ukuran logis katalog teks lengkap dalam megabyte (MB). Termasuk ukuran frasa kunci semantik dan indeks kesamaan dokumen.

Untuk informasi selengkapnya, lihat "Komentar," nanti dalam topik ini.
ItemCount Jumlah item terindeks termasuk semua teks lengkap, frasa kunci, dan indeks kesamaan dokumen dalam katalog
LogSize Didukung hanya untuk kompatibilitas mundur. Selalu mengembalikan 0.

Ukuran, dalam byte, dari kumpulan log kesalahan gabungan yang terkait dengan katalog teks lengkap Layanan Pencarian Microsoft.
MergeStatus Menunjukkan apakah penggabungan master sedang berlangsung.

0 = penggabungan master tidak sedang berlangsung

1 = penggabungan master sedang berlangsung
IsiCompletionAge Perbedaan dalam detik antara penyelesaian populasi indeks teks lengkap terakhir dan 01/01/1990 00:00:00.

Hanya diperbarui untuk perayapan penuh dan bertahap. Mengembalikan 0 jika tidak ada populasi yang terjadi.
IsiStatus 0 = Diam

1 = Populasi penuh sedang berlangsung

2 = Dijeda

3 = Dibatasi

4 = Memulihkan

5 = Matikan

6 = Populasi inkremental sedang berlangsung

7 = Indeks bangunan

8 = Disk penuh. Dijeda.

9 = Pelacakan perubahan
UniqueKeyCount Jumlah kunci unik dalam katalog teks lengkap.
ImportStatus Menunjukkan apakah katalog teks lengkap sedang diimpor.

0 = Katalog teks lengkap tidak diimpor.

1 = Katalog teks lengkap sedang diimpor.

Jenis Pengembalian

int

Pengecualian

Mengembalikan NULL pada kesalahan atau jika penelepon tidak memiliki izin untuk melihat objek.

Dalam SQL Server, pengguna hanya dapat melihat metadata yang dapat diamankan. Pengamanan ini adalah yang dimiliki pengguna atau di mana pengguna telah diberikan izin. Dengan demikian, fungsi bawaan yang memancarkan metadata, seperti FULLTEXTCATALOGPROPERTY, dapat mengembalikan NULL jika pengguna tidak memiliki izin apa pun pada objek. Untuk informasi selengkapnya, lihat sp_help_fulltext_catalogs (Transact-SQL).

Keterangan

FULLTEXTCATALOGPROPERTY ('catalog_name','IndexSize') hanya melihat fragmen dengan status 4 atau 6 seperti yang ditunjukkan dalam sys.fulltext_index_fragments. Fragmen ini adalah bagian dari indeks logis. Dengan demikian, properti IndexSize hanya mengembalikan ukuran indeks logis.

Namun, selama penggabungan indeks, ukuran indeks aktual mungkin dua kali lipat dari ukuran logikanya. Untuk menemukan ukuran aktual yang sedang digunakan oleh indeks teks lengkap selama penggabungan, gunakan prosedur tersimpan sistem sp_spaceused . Prosedur itu melihat semua fragmen yang terkait dengan indeks teks lengkap.

Populasi teks lengkap mungkin gagal. Ini mungkin gagal jika Anda membatasi pertumbuhan file katalog teks lengkap dan tidak mengizinkan cukup ruang untuk proses penggabungan. Dalam hal ini, FULLTEXTCATALOGPROPERTY ('catalog_name','IndexSize') mengembalikan 0 dan kesalahan berikut ditulis ke log teks lengkap:

Error: 30059, Severity: 16, State: 1. A fatal error occurred during a full-text population and caused the population to be cancelled. Population type is: FULL; database name is FTS_Test (id: 13); catalog name is t1_cat (id: 5); table name t1 (id: 2105058535). Fix the errors that are logged in the full-text crawl log. Then, resume the population. The basic Transact-SQL syntax for this is: ALTER FULLTEXT INDEX ON table_name RESUME POPULATION.

Penting bahwa aplikasi tidak menunggu dalam perulangan yang ketat, memeriksa properti PopulateStatus menjadi menganggur. Menjadi diam menunjukkan bahwa populasi telah selesai. Pemeriksaan ini mengambil siklus CPU dari database dan proses pencarian teks lengkap, dan menyebabkan waktu habis. Biasanya merupakan opsi yang lebih baik untuk memeriksa properti PopulateStatus yang sesuai di tingkat tabel, TableFullTextPopulateStatus dalam fungsi sistem OBJECTPROPERTYEX. Ini dan properti teks lengkap baru lainnya di OBJECTPROPERTYEX memberikan informasi yang lebih terperinci tentang tabel pengindeksan teks lengkap. Untuk informasi selengkapnya, lihat OBJECTPROPERTYEX (Transact-SQL).

Contoh

Contoh berikut mengembalikan jumlah item terindeks teks lengkap dalam katalog teks lengkap bernama Cat_Desc.

USE AdventureWorks2012;  
GO  
SELECT fulltextcatalogproperty('Cat_Desc', 'ItemCount');  
GO  

Lihat juga

FULLTEXTSERVICEPROPERTY (Transact-SQL)
Fungsi Metadata (Transact-SQL)
sp_help_fulltext_catalogs (T-SQL)