📄 useexecute.java
字号:
package ch13;
import java.sql.*;
public class UseExecute {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost/sql_test";
String userName = "root";
String password = "root";
String sql = "";
Connection conn = null;
Statement stmt = null;
if (args.length==0) {
System.out.println("您没有输入SQL语句");
return;
}
//从参数中提取SQL语句
for (int i=0; i<args.length; i++) {
sql = sql + args[i] + " ";
}
try {
Class.forName("com.mysql.jdbc.Driver");
} catch(ClassNotFoundException e) {
System.out.println("加载驱动器类时出现异常");
}
try {
conn = DriverManager.getConnection(url, userName, password);
//创建Statement语句
stmt = conn.createStatement();
System.out.println("");
System.out.println("执行的SQL语句为:" + sql);
//使用execute执行未知SQL语句
boolean isResultSet = stmt.execute(sql);
int count = 0;
while (true) {
count ++;
if (isResultSet) {
ResultSet rs = stmt.getResultSet();
System.out.println("");
System.out.println("返回的执行结果 " + count + " 为结果集");
//显示返回的结果集
while (rs.next()) {
String f1 = rs.getString(1);
String f2 = rs.getString(2);
String f3 = rs.getString(3);
System.out.println(f1 + " " + f2 + " " + f3);
}
rs.close();
}
else {
int affectedRowCount = stmt.getUpdateCount();
if (affectedRowCount == -1) break;
System.out.println("");
System.out.println("返回的执行结果 " + count + " 为更新计数");
System.out.println("更新计数为:" + affectedRowCount);
}
isResultSet = stmt.getMoreResults();
}
stmt.close();
} catch(SQLException e) {
System.out.println("出现SQLException异常");
} finally {
//关闭语句和数据库连接
try {
if (conn != null) conn.close();
} catch(SQLException e) {
System.out.println("关闭数据库连接时出现异常");
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -