|
used_pgs()
Die
System Funktion
used_pgs()
gibt die Anzahl der genutzten
Pages
einer
Tabelle
oder eines
Index
zurück.
Bei einer Tabelle mit
all-pages lock
Schema und einem
clustered index,
besteht der Rückgabewert aus der Summe der Seiten (Pages) genutzt von Index und Tabelle.
Bei einer Tabelle mit
data-only-locked
Schema, sowie für Tabellen ohne
clustered Index, gibt die Funktion "used_pgs" die Anzahl der genutzten Seiten
in der Tabelle zurück.
Bei Tabellen mit data-only-locked Schema, die einen clustered oder
non-clustered Index
besitzen, gibt die Funktion "used_pgs" die Anzahl der genutzten Seiten des Index wieder.
Die Funktion used_pgs wird ab ASE-Version 15.0 durch die System Funktion
used_pages ersetzt.
Die System Funktion "used_pgs()" ist eine
T-SQL
Erweiterung. Sie kann von jedem
User
nur auf den Objekten in der aktuellen Datenbank ausgeführt werden.
Syntax der System Funktion used_pgs()
used_pages(object_id, doampg, ioampg)
Die Parameter der System Funktion used_pgs()
"object_id"
Der Parameter "object_id" ist die ID (Identifikationsnummer)
der
Tabelle
für welche die Anzahl der genutzten Seiten abgefragt werden soll.
Um die Seitenanzahl anzuzeigen, die von einem Index genutzt werden,
gibt man dennoch die "object_id" der Tabelle an, zu der der Index gehört.
Die object_id kann aus der
Spalte
"id" in der
Systemtabelle
sysobjects
ermittelt werden.
Jede Tabelle und jeder Index besitzen eine
Object Allocation Map
oder
OAM.
Diese Seiten beinhalten Informationen über die Anzahl der Seiten, die einem Objekt
zugeordnet wurden. Die Informationen werden von verschiedenen ASE
Prozessen
erneuert, wenn Seiten (Pages) hinzugefügt oder entfernt werden.
Prozesse, die diese Informationen auslesen, sind u.a.
sp_spaceused,
oder auch einige
dbcc
Kommandos.
"doampg"
Der Parameter "doampg" ist die Seitennummer der
Object Allocation Map
oder
OAM
einer Tabelle oder eines clustered index.
Der Wert "doampg" kann aus
aus der Spalte doampg in der
Systemtabelle
sysindexes
ausgelesen werden.
"ioampg"
Der Parameter "ioampg" bezeichnet die Seitenummer für die
Object Allocation Map
oder
OAM
eines non-clustered Index, der abgefragt werden soll. Der Wert für "ioampg" ist beziehbar
aus der Spalte "ioampg" in der System Tabelle
sysindexes.
Beispiel für die System Funktion used_pgs()
1> select name, id, indid, doampg, ioampg
2> from sysindexes where id = object_id("spt_values")
3> go
name id indid doampg ioampg
------------------------------ ----------- ------ ----------- -----------
spt_valuesclust 505049804 1 1040 1032
1> select used_pgs(505049804,1040,1032)
2> go
-----------
38
(1 row affected)
Gibt die Summe der genutzten Seiten (Pages) der Tabelle mit der ID 505049804 ("spt_values")
und ihres clustered index zurück.
Siehe auch:
Aggregat Funktionen, audit_event_name(), col_length(), col_name(), curunreservedpgs(), datachange(), datalength(), data_pages(), data_pgs(), db_id(), db_name(), derived_stat(), host_id(), host_name(), identity(), identity_burn_max(), index_col(), index_colorder(), isnull(), is_quiesced(), lct_admin("logsegment_freepages"), lct_admin("num_logpages"), lct_admin("reserved"), lct_admin("reserved_for_rollbacks"), lct_admin(), license_enabled(), lockscheme(), next_identity(), object_id(), object_name(), pageinfo(), pagesize(), pointer_size(), ptn_data_pgs(), reserved_pages(), reserved_pgs(), rowcnt(), row_count(), showplan_in_xml(), syb_quit(), syb_sendmsg(), System Funktionen, tempdb_id(), tran_dumpable_status(), tsequal(), used_pages().
|