Sie verwenden ein DBM-Kommando, um eine SQL-Anweisung an die Datenbankinstanz zu übermitteln.
Anders als bei Verwendung des DBM-Kommandos sql_executenicewollen Sie sich in der Antwort so viele Datensätze wie möglich anzeigen lassen. Die Menge der übertragenen Daten ist begrenzt durch die Größe des vom DBM-Server übertragenen Antwortpakets.
Wenn es sich um eine SELECT-Anweisung handelt, dann werden vom System die Datensätze der Antwort angezeigt. Wenn aufgrund der begrenzten Größe des Antwortpakets noch nicht alle Daten angezeigt werden können, dann verwenden Sie anschließend das DBM-Kommando sql_fetch, um ein weiteres Antwortpaket mit Datensätzen zu übertragen. Dies ist jedoch nur dann möglich, wenn Sie sich noch in derselben Datenbanksitzung befinden.
Wenn Sie andere SQL-Anweisungen eingeben, wird die Ausführung der Anweisung mit einer OK-Meldung bestätigt.
Bei der Ausführung dieses DBM-Kommandos wird implizit eine Sitzung mit der Datenbankinstanz eröffnet und nach Ausführung des Kommandos wieder beendet. Diese Datenbanksitzung wird im AUTOCOMMIT-Modus eröffnet, d. h. jede eingegebene SQL-Anweisung wird automatisch mit einer COMMIT-Anweisung abgeschlossen.
Wenn eine Folge von SQL-Anweisungen ausgeführt werden soll und diese nur von einem bestimmten Datenbankbenutzer ausgeführt werden können, dann empfiehlt es sich, zunächst eine SQL-Sitzung mit den Daten dieses Datenbankbenutzers zu eröffnen (Siehe: sql_connect), alle SQL-Anweisungen auszuführen und anschließend entweder die SQL-Sitzung (Siehe: sql_release) oder den Database Manager CLI zu beenden.
Weitere Informationen zu SQL-Anweisungen
finden Sie in den Dokumentationen SQL-Referenzhandbuch
und
SQL-Tutorial.
Siehe auch:
Tutorial
Datenbankverwaltung, Betriebsmodi im
Database Manager CLI,
Ausführen von
Datenbankanweisungen
Konzepte des
Datenbanksystems, SQL
Voraussetzungen
● Sie arbeiten im Sitzungsmodus des Database Manager CLI.
● Sie haben die Serverberechtigung AccessSQL.
sql_execute [<user_type>] <statement>
<user_type> : = user-type=<value>
Optionen
Option |
Beschreibung |
<statement> |
SQL-Anweisung |
<dabase_user> |
Name des Datenbankbenutzers |
<database_user_password> |
Kennwort des Datenbankbenutzers |
user-type=<value> |
Benutzertyp, mögliche Werte sind: DBM: erster DBM-Benutzer DBA: Datenbanksystemadministrator SAP: spezieller Datenbankbenutzer im Zusammenhang mit SAP-Anwendungen |
OK
[END|CONTINUE]
[<record>
<record>
...]
Werte für die Felder der Antwort
Wert |
Beschreibung |
END |
Die Antwort wurde vollständig ausgegeben. |
CONTINUE |
Es liegen noch weitere Datensätze vor, die aufgrund der begrenzten Größe des Antwortpakets nicht übertragen wurden. |
<record> |
Ergebnisdaten der SQL-Anweisung Die Felder in
einem Datensatz sind durch Semikolon voneinander getrennt. |
Im Fehlerfall siehe Antwortformat.
...
Aufrufen des Database Manager CLI im Sitzungsmodus, Anmelden als Benutzer OLEG mit dem Kennwort MONDAY, Herstellen der Verbindung zur Datenbankinstanz DEMODB, Anzeigen der Spalten der Tabelle USERS mit den dazugehörigen Kommentaren:
>dbmcli -u OLEG,MONDAY -d DEMODB
dbmcli on DEMODB>sql_execute SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'
OK
END
'OWNER';(long)
'GROUPNAME';(long)
'USERNAME';(long)
'USERMODE';(long)
'CONNECTMODE';(long)
'MAXTIMEOUT';(long)
'COSTWARNING';(long)
'COSTLIMIT';(long)
'DEFAULTCODE';(long)
'CREATEDATE';(long)
'CREATETIME';(long)
'ALTERDATE';(long)
'ALTERTIME';(long)
'PWCREADATE';(long)
'PWCREATIME';(long)
'SERVERDB';(long)
'SERVERNODE';(long)
'USER_ID';(long)
'ISREPLICATIONUSER';(long)
'COMMENT';(long)