什么是JDBC SQL转义语法说明?

转义语法使您可以灵活使用标准JDBC方法和属性使用的数据库特有功能。

常规的SQL转义语法格式如下:

{keyword 'parameters'}

以下是JDBC中的各种转义语法:

d,t,ts关键字:它们有助于识别日期,时间和时间戳文字。如您所知,没有两个DBMS用相同的方式表示时间和日期。此转义语法告诉驱动程序以目标数据库的格式呈现日期或时间

{d 'yyyy-mm-dd'}

其中yyyy =年,mm =月;dd =日期。使用此语法{d'2009-09-03'}是2009年3月9日。

示例

//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);

逸出关键字

此关键字标识LIKE子句中使用的转义字符。在使用SQL通配符%(与零个或多个字符匹配)时很有用。例如-

String sql = "SELECT symbol FROM MathSymbols WHERE symbol LIKE '\%' {escape '\'}";
stmt.execute(sql);

如果将反斜杠字符(\)用作转义字符,则还必须在Java String文字中使用两个反斜杠字符,因为反斜杠也是Java转义字符。

fn关键字

此关键字表示DBMS中使用的标量函数。例如,您可以使用SQL函数length来获取字符串的长度-

{fn length('Hello World')}

返回11,即字符串“ Hello World”的长度。呼叫关键字

此关键字用于调用存储过程。例如,对于需要IN参数的存储过程,请使用以下语法-

{call my_procedure(?)};

对于需要IN参数并返回OUT参数的存储过程,请使用以下语法-

{? = call my_procedure(?)};

oj关键字

此关键字用于表示外部联接。语法如下-

{oj outer-join}

其中,外部联接=表{LEFT | RIGHT | FULL} OUTERJOIN {table | 搜索条件。

String sql = "SELECT Employees FROM {oj ThisTable RIGHT OUTER JOIN ThatTable on id = '100'}";
stmt.execute(sql);