📄 exsql.java
字号:
//声明本类包含在包examples.jdbc.oracle中
package examples.jdbc.oracle;
//声明本类要引入的其他包和类
import java.io.*;
import java.util.*;
import java.net.*;
import java.sql.*;
import java.util.Properties;
import weblogic.common.*;
/**
* 这个实例演示JDBC使用扩展SQL,嵌入到标准SQL。
*/
public class exsql {
/**
* 在main函数中,我们设置连接属性,获取连接对象,然后创建扩展SQL并执行。
* 注意扩展SQL元素用{}封装。这个实例使用函数dayname,now(),和date, time,和
* timestamp escape.
*/
public static void main(String argv[]) throws Exception {
//声明连接
Connection conn = null;
try {
//属性对象
java.util.Properties props = new java.util.Properties();
//设置属性
props.put("user", "scott");
props.put("password", "tiger");
props.put("server", "DEMO");
//加载驱动
Driver myDriver = (Driver) Class.forName("weblogic.jdbc.oci.Driver").newInstance();
//连接
conn = myDriver.connect("jdbc:weblogic:oracle", props);
//语句对象
Statement stmt = conn.createStatement();
//扩展的SQL语句
String exsql =
"select {fn dayname ({fn now()})}, -- Today \n" +
" {d '1997-05-24'}, -- a date \n" +
" {t '10:30:29' }, -- a time \n" +
" {ts '1997-05-24 10:30:29.123'}, -- a timestamp \n" +
" '{string data with { or } will not be altered' \n" +
" from dual \n" +
"--{ Also note that you can safely include { and } in comments";
System.out.println(" The Extended SQL:\n" + exsql + "\n\n becomes:\n");
//转化扩展SQL为系统自身的SQL
System.out.println(conn.nativeSQL(exsql));
//执行Sql语句并返回结果集
ResultSet rs = stmt.executeQuery(exsql);
//打印结果
while (rs.next())
System.out.println("Got: " + rs.getString(1) +
"\n " + rs.getString(2) +
"\n " + rs.getString(3) +
"\n " + rs.getString(4) +
"\n " + rs.getString(5) );
}
catch (Exception e) {
//异常处理
e.printStackTrace();
}
finally {
//关闭数据库连接
try {conn.close();} catch (Exception e) {;}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -