Die Escape-Syntax ermöglicht Ihnen die Nutzung datenbankspezifischer Funktionen, die mit Standard-JDBC-Methoden und -Eigenschaften nicht möglich sind.
Das allgemeine SQL-Escape-Syntaxformat lautet wie folgt:
{keyword 'parameters'}
Es folgen verschiedene Escape-Syntaxen in JDBC:
d, t, ts Schlüsselwörter: Sie helfen bei der Identifizierung von Datums-, Uhrzeit- und Zeitstempelliteralen Zwei DBMS stellen Uhrzeit und Datum auf die gleiche Weise dar. Diese Escape-Syntax weist den Treiber an, das Datum oder die Uhrzeit im Format der Zieldatenbank darzustellen. Wobei yyyy = Jahr, mm = Monat = Datum - 09-03'} ist der 9. März 2009.
Beispiel
{d 'yyyy-mm-dd'}
//Create a Statement object stmt = conn.createStatement(); //Insert data ==> ID, First Name, Last Name, DOB String sql="INSERT INTO STUDENTS VALUES" + "(100,'Zara','Ali', {d '2001-12-16'})"; stmt.executeUpdate(sql);
Wenn Sie das Backslash-Zeichen () als Escape-Zeichen verwenden, müssen Sie auch zwei Backslash-Zeichen in Ihrem Java-String-Literal verwenden, da der Backslash auch ein Java-Escape-Zeichen ist.
fn-Schlüsselwort
verwenden, um die Länge einer Zeichenfolge abzurufen −String sql = "SELECT symbol FROM MathSymbols WHERE symbol LIKE '\%' {escape '\'}";
stmt.execute(sql);
Dies gibt 11 zurück, die Länge der Zeichenfolge „Hello World“. Schlüsselwort aufrufen
Dieses Schlüsselwort wird zum Aufrufen der gespeicherten Prozedur verwendet. Verwenden Sie beispielsweise für eine gespeicherte Prozedur, die einen IN-Parameter erfordert, die folgende Syntax: -
{fn length('Hello World')}
Für eine gespeicherte Prozedur, die einen IN-Parameter erfordert und einen OUT-Parameter zurückgibt, verwenden Sie die folgende Syntax: -
{call my_procedure(?)};
oj Schlüsselwort
{? = call my_procedure(?)};
Wobei äußerer-Join = Tabelle {LEFT|RIGHT|FULL} OUTERJOIN {Tabelle | | für Suchbedingung.
{oj outer-join}
Das obige ist der detaillierte Inhalt vonWas bedeutet die JDBC-SQL-Escape-Syntax? Bitte erklären Sie es. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!