Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Programmierung » SQL Anywhere Datenzugriff-APIs » SQL Anywhere JDBC-Treiber

 

JDBC-Escape-Syntax verwenden

Sie können JDBC-Escape-Syntax aus jeder JDBC-Anwendung verwenden, auch aus Interactive SQL. Diese Escape-Syntax ermöglicht den Aufruf von gespeicherten Prozeduren unabhängig vom Datenbankmanagementsystem, das Sie verwenden. Das allgemeine Syntaxformat lautet wie folgt:

{{ keyword Parameter }}

In Interactive SQL müssen die Klammern doppelt sein. Zwischen aufeinanderfolgenden geschweiften Klammern darf kein Leerzeichen stehen. "{{" ist korrekt, "{ {" nicht. Außerdem dürfen Sie kein Zeilenschaltungszeichen in der Anweisung verwenden. Die Escape-Syntax kann in gespeicherten Prozeduren nicht verwendet werden, weil diese nicht von Interactive SQL ausgeführt werden.

Sie können die Escape-Syntax aber benutzen, um auf eine Bibliothek von Funktionen zuzugreifen, die im JDBC-Treiber implementiert sind und Zahlen-, Zeichenketten-, Zeit-, Datums- und Systemfunktionen umfassen.

Um beispielsweise den Namen des aktuellen Benutzers in einer vom jeweiligen Datenbankadministrationssystem unabhängigen Weise abzufragen, führen Sie folgenden Befehl aus:

SELECT {{ FN USER() }}

Die verfügbaren Funktionen richten sich nach dem von Ihnen benutzten JDBC-Treiber. Die folgenden Tabellen zeigen die Funktionen, die vom iAnywhere JDBC-Treiber und vom jConnect-Treiber unterstützt werden.

Vom iAnywhere JDBC-Treiber unterstützte Funktionen
Nummerische Funktionen Zeichenfolgenfunktionen Systemfunktionen Datum/Zeit-Funktionen
ABS ASCII IFNULL CURDATE
ACOS CHAR USERNAME CURTIME
ASIN CONCAT DAYNAME
ATAN DIFFERENCE DAYOFMONTH
ATAN2 INSERT DAYOFWEEK
CEILING LCASE DAYOFYEAR
COS LEFT HOUR
COT LENGTH MINUTE
DEGREES LOCATE MONTH
EXP LOCATE_2 MONTHNAME
FLOOR LTRIM NOW
LOG REPEAT QUARTER
LOG10 RIGHT SECOND
MOD RTRIM WEEK
PI SOUNDEX YEAR
POWER SPACE
RADIANS SUBSTRING
RAND UCASE
ROUND
SIGN
SIN
SQRT
TAN
TRUNCATE
Von jConnect unterstützte Funktionen
Nummerische Funktionen Zeichenfolgenfunktionen Systemfunktionen Datum/Zeit-Funktionen
ABS ASCII DATABASE CURDATE
ACOS CHAR IFNULL CURTIME
ASIN CONCAT USER DAYNAME
ATAN DIFFERENCE CONVERT DAYOFMONTH
ATAN2 LCASE DAYOFWEEK
CEILING LENGTH HOUR
COS REPEAT MINUTE
COT RIGHT MONTH
DEGREES SOUNDEX MONTHNAME
EXP SPACE NOW
FLOOR SUBSTRING QUARTER
LOG UCASE SECOND
LOG10 TIMESTAMPADD
PI TIMESTAMPDIFF
POWER YEAR
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
TAN

Eine Anweisung, die die Escape-Syntax benutzt, funktioniert in SQL Anywhere, Adaptive Server Enterprise, Oracle, SQL Server oder anderen Datenbankadministrationssystemen, mit denen Sie sich verbinden.

Um z.B. Datenbankeigenschaften mit der Prozedur sa_db_info unter Verwendung der SQL-Escape-Syntax zu erhalten, müssen Sie folgenden Aufruf in Interactive SQL ausführen:

{{CALL sa_db_info( 0 ) }}