Liefert Informationen über Verbindungseigenschaften
sa_conn_info( [ Verbindung-ID-Parameter ] )
Verbindung-ID-Parameter Dieser optionale INTEGER-Parameter gibt die Verbindungs-ID-Nummer an.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
Number | INTEGER | Die Verbindungs-ID-Nummer. |
Name | VARCHAR(255) | Der Name der Verbindung. Bei temporären Verbindungsnamen wird dem Verbindungsnamen INT: vorangestellt. Eine Liste der gültigen temporären Verbindungsnamen finden Sie unter Name-Verbindungseigenschaft. |
Benutzer-ID | VARCHAR(255) | Die Benutzer-ID für die Verbindung |
DBNumber | INTEGER | Die Datenbank-ID-Nummer. |
LastReqTime | VARCHAR(255) | Der Zeitpunkt, an dem die letzte Anforderung für die angegebene Verbindung gestartet ist |
ReqType | VARCHAR(255) | Eine Zeichenfolge für den Typ der letzten Anforderung |
CommLink | VARCHAR(255) | Die Kommunikationsverbindung für die Verbindung. Dies ist eines der von SQL Anywhere unterstützten Netzwerkprotokolle oder "local" bei einer Verbindung innerhalb eines Computers. |
NodeAddr | VARCHAR(255) | Die Adresse des Clients in einer Client/Server-Verbindung |
ClientPort | INTEGER | Die Portnummer, über die die Clientanwendung mithilfe von TCP/IP kommuniziert |
ServerPort | INTEGER | Die Portnummer, über die der Server mithilfe von TCP/IP kommuniziert |
BlockedOn | INTEGER | Falls die aktuelle Verbindung nicht blockiert ist, wird der Wert Null angezeigt. Sonst entspricht der Wert der Verbindungsnummer der Verbindung, die aufgrund eines Sperrenkonflikts blockiert ist. |
LockTable | VARCHAR(255) | Wenn die Verbindung auf eine Sperre wartet, ist LockTable der Name der Tabelle, die der Sperre zugeordnet ist. Andernfalls ist LockTable eine leere Zeichenfolge. |
UncommitOps | INTEGER | Die Anzahl der nicht festgeschriebenen Vorgänge |
LockRowID | UNSIGNED BIGINT | Wenn die Verbindung auf eine Sperre wartet, die einer bestimmten Zeilen-ID zugeordnet ist, enthält LockRowID diese Zeilen-ID. LockRowID ist NULL, wenn die Verbindung nicht auf eine Sperre wartet, der eine Zeile zugeordnet ist (d.h., sie wartet nicht auf eine Sperre oder wartet auf eine Sperre, der keine Zeile zugeordnet ist). |
LockIndexID | INTEGER | Wenn die Verbindung auf eine Sperre wartet, die einem bestimmten Index zugeordnet ist, enthält LockIndexID die ID für diesen Index (oder -1, wenn die Sperre allen Indizes der Tabelle in LockTable zugeordnet ist). LockIndexID ist NULL, wenn die Verbindung nicht auf eine Sperre wartet, der ein Index zugeordnet ist (d.h., sie wartet nicht auf eine Sperre oder wartet auf eine Sperre, der kein Index zugeordnet ist). |
ParentConnection | INTEGER | Wenn es sich um eine vom Datenbankserver erstellte temporäre Verbindung handelt, gibt diese Eigenschaft die Verbindungs-ID zurück, die die temporäre Verbindung erstellt hat. Andernfalls ist der Wert NULL. Siehe Temporäre Verbindungen. |
Wenn Sie die Verbindungs-ID angeben, gibt die sa_conn_info-Systemprozedur eine Ergebnismenge zurück, die aus Verbindungseigenschaften für die angegebene Verbindung besteht. Wenn kein Verbindung-ID-Parameter angegeben wird, gibt diese Systemprozedur Informationen über alle derzeitigen Verbindungen mit Datenbanken auf dem Server zurück. Wenn Verbindung-ID-Parameter kleiner als Null ist, werden Optionswerte für die aktuelle Datenbank zurückgegeben.
Bei einer blockierten Verbindung wird der von dieser Prozedur zurückgegebene Wert "BlockedOn" verwendet, um zu ermitteln, welche Benutzer blockiert sind und von wem sie blockiert werden. Die sa_locks-Systemprozedur kann verwendet werden, um die Sperren anzuzeigen, die der blockierenden Verbindung gehören.
Um weitere auf diesen Eigenschaften basierende Informationen zu erhalten, können Sie eine Abfrage ähnlich der Folgenden ausführen:
SELECT *, DB_NAME( DBNumber ), CONNECTION_PROPERTY( 'LastStatement', Number ) FROM sa_conn_info( ); |
Der Wert von LockRowID kann verwendet werden, um nach einer Sperre in der Ausgabe der sa_locks-Prozedur zu suchen.
Der Wert in LockIndexID kann verwendet werden, um nach einer Sperre in der Ausgabe der sa_locks-Prozedur zu suchen. Der Wert in LockIndexID entspricht zudem dem Primärschlüssel in der ISYSIDX-Systemtabelle, die unter Verwendung der SYSIDX-Systemansicht angezeigt werden kann.
Jede Sperre hat eine zugeordnete Tabelle, daher kann der Wert von LockTable verwendet werden, um eindeutig zu ermitteln, ob eine Verbindung auf eine Sperre wartet.
Keine
Keine
Im folgenden Beispiel wird mithilfe der sa_conn_info-Systemprozedur eine Ergebnismenge zurückgegeben, die Verbindungseigenschaften für alle Verbindungen zum Server zusammenfasst.
CALL sa_conn_info( ); |
Nummer | Name | Benutzer-ID | DBNumber | ... |
---|---|---|---|---|
79 | DBA | 0 | ... | |
46 | Sybase Central 1 | DBA | 0 | ... |
... | ... | ... | ... | ... |
Im folgenden Beispiel wird mithilfe der sa_conn_info-Systemprozedur eine Ergebnismenge zurückgegeben, die zeigt, welche Verbindung eine temporäre Verbindung erstellt hat.
SELECT Number, Name, ParentConnection FROM sa_conn_info(); |
Verbindung 8 hat die temporäre Verbindung erstellt, von der eine DATABASE CREATE-Anweisung ausgeführt wurde.
Number Name ParentConnection ------------------------------------------------ 1000000048 INT: CreateDB 8 9 SQL_DBC_14675af8 (NULL) 8 SQL_DBA_152d5ac0 (NULL) |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |