|
used_pages()
Die
System Funktion
used_pages()
gibt die Anzahl der genutzten
Pages
einer
Tabelle,
Partition
oder eines
Index
zurück.
Im Gegensatz zur Funktion
data_pages(),
beinhaltet der Rückgabewert der Funktion used_pages auch die Seiten (Pages),
die für
ASE-
interne Strukturen genutzt werden.
Die Funktion used_pages ersetzt ab ASE-Version 15.0 die System Funktion
used_pgs().
used_pages(dbid, objid, 0) liefert das selbe Resultat zurück, wie used_pages(dbid, objid, 1),
wenn eine Tabelle mit dem
all-page lock
scheme mit einem
clustered index
abgefragt wird.
Dies ist vergleichbar zu der früheren Version used_pgs(objid, doampg, ioampg).
Alle fehlerhaften Rückgaben werden durch einen Rückgabewert von "0" abgedeckt.
Die System Funktion "used_pages()" ist eine
T-SQL
Erweiterung. Sie kann von jedem
User
ausgeführt werden.
Syntax der System Funktion used_pages()
used_pages(dbid, object_id [, indid , ptnid])
Die Parameter der System Funktion used_pages()
"dbid"
Der Parameter "dbid" ist die ID (Identifikationsnummer)
der
Datenbank
in der das
Objekt,
gespeichert ist. Die dbid kann aus der
Spalte
dbid in der
Systemtabelle
sysdatabases
ermittelt werden.
"object_id"
Der Parameter "object_id" ist die Identifikationsnummer des
Objekts,
also der Tabelle, für die used_pages die Gebrauchsdaten ermitteln soll.
Die "object_id" kann aus
aus der Spalte id in der
Systemtabelle
sysobjects
ausgelesen werden.
Um die Anzahl der Seiten (Pages) anzuzeigen, die von einem
Index
genutzt werden, spezifiziert man die "object_id" der Tabelle, zu der der
Index gehört.
"indid"
Der Parameter "indid" bezeichnet die Indentifikationsnummer
des Indexes, der abgefragt werden soll. Die "indid" ist beziehbar
aus der Spalte "indid" in der System Tabelle
sysindexes.
"ptnid"
Der Parameter "ptnid" ist die Identifikationsnummer der Partition, die abgefragt werden soll.
Die "ptnid" kann aus der Spalte "partitionid" in der
System Tabelle
syspartitions
abgefragt werden.
Beispiel für die System Funktion used_pages()
1> select used_pages(1,960003420)
2> go
-----------
37
(1 row affected)
Gibt die Anzahl der genutzten Seiten (Pages) der Tabelle mit der ID 960003420 ("spt_values")
in der Datenbank "master" zurück.
1> select used_pages(1,960003420,0)
2> go
-----------
35
(1 row affected)
Gibt die Anzahl der genutzten Seiten (Pages) im Datensegment der Tabelle wieder, unabhängig davon,
ob ein "clustered index" existiert oder nicht.
1> select used_pages(1,960003420,1)
2> go
-----------
37
(1 row affected)
Gibt die Anzahl der genutzten Seiten (Pages) im Indexsegment der Tabelle wieder. Die Seiten des Datensegments
werden nicht berücksichtigt.
1> select used_pages(1,1616005757,0,1616005757)
2> go
-----------
3
(1 row affected)
Gibt die Anzahl der genutzten Seiten (Pages) des Objekts im Datensegment der angegebenen Partition zurück
(hier: 1616005757)
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_pgs().
|