A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  Sonderzeichen  sybase-tech-blog


Kategorie: ASE: Funktionen: System Funktionen

xa_gtrid()

Die System Funktion xa_gtrid() liefert als Rückgabewert den "global transaction id" Bestandteil einer ASCII Transaktions ID im Binärformat. Diese wird benötigt, wenn in einem System mit Verteilten Transaktionen eine externe Transaktion im ASE geblockt wird. Die blockende Transaktion kann mit Hilfe der Stored Procedures sp_lock und sp_transaction identifiziert, und dann mit dem "XA Transaction Manager" terminiert werden. Jedoch liefern die Stored Procedure sp_lock und sp_transaction den Wert des xactname im ASCII-Format, während der "XA Transaction Manager" jedoch einen Wert im Binärformat erwartet. Die Funktion xa_gtrid kann also dazu benutzt werden, die entsprechende Globale Transaktions ID (gtrid) einer Transaktion im korrekten Format für den "XA Transaction Manager" zu bestimmen. Der Rückgabewert der Funktion xa_gtrid kann NULL sein, wenn die Transaktions ID nicht dekodiert werden kann, oder in einem unbekannten Format vorliegt. xa_gtrid wird of im Zusammenhang mit der Funktion xa_bqual() verwendet. Die Funktion ist eine T-SQL Erweiterung. Sie kann von jedem User ausgeführt werden.

Syntax der System Funktion xa_gtrid()

    xa_gtrid(xactname, int)

Die Parameter der System Funktion xa_gtrid()

"xid"
Der Parameter "xid" ist die Identifikationsnummer (ID) einer ASE Transaktion. Der "xid" kann aus der Spalte quot;xactname" der Systemtabelle systransactions oder mit der Stored Procedure sp_transactions ermittelt werden. xa_gtrid unternimmt keine Prüfung der Transaction ID, sondern liefert lediglich eine umformatierte Zeichenfolge.

"int"
Der Parameter "int" steht für einen Integer Wert. Dieser ist zur Zeit standardmäßig mit "0" belegt und für zukünftige Benutzung reserviert.

Beispiel für die System Funktion xa_gtrid()

    select xa_gtrid("0000000B_FfgIT345iG7bF1#AGffzaM_8DZ61E1", 0)
    go
    
    --------------------------------------------------------------------------
    0xb1857bdv23456a61cba42fe34256df542
    

Der Rückgabewert ist die, in Binärformat übersetzte, Globale Transaktions ID der ASE Transaktions ID "0000000B_FfgIT345iG7bF1#AGffzaM_8DZ61E1".

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(),
used_pgs().