【发布时间】:2016-04-01 09:35:37
【问题描述】:
我有两个表部门和员工都有共同的列department_id
首先我显示了部门表中的部门名称,第二个雇员表中的employee_id。现在我的查询是我想从用户那里获取部门名称并与部门表进行比较,如果名称可用,结果应该显示该特定部门的员工 ID
import java.sql.*;
class OracleCon {
public static void main(String args[]) {
try {
//step1 load the driver class
Class.forName("oracle.jdbc.driver.OracleDriver");
//step2 create the connection object
Connection con= DriverManager.getConnection ("jdbc:oracle:thin:@localhost:1521:xe","hr","hr");
//step3 create the statement object
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from departments");
while (rs.next()) {
String dname = rs.getString("DEPARTMENT_NAME");
System.out.println(dname);
}
Statement stmt1 = con.createStatement();
ResultSet rs1 = stmt1.executeQuery("select * from employees");
while (rs1.next()) {
Integer eno = rs1.getInt("employee_id");
System.out.println(eno);
}
con.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
【问题讨论】:
-
导入 java.sql.*; class OracleCon { public static void main(String args[]) { try { //step1 加载驱动类 Class.forName("oracle.jdbc.driver.OracleDriver"); //step2 创建连接对象 Connection con= DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","hr","hr"); //step3 创建语句对象 Statement stmt = con.createStatement(); ResultSet rs=stmt.executeQuery("从部门中选择 *"); while(rs.next()) { String dname=rs.getString("DEPARTMENT_NAME"); System.out.println(dname); }
-
语句 stmt1=con.createStatement(); ResultSet rs1=stmt1.executeQuery("select * from employees");而(rs1.next()){整数eno=rs1.getInt(“employee_id”); System.out.println(eno); } con.close(); } 捕捉(异常 e) { System.out.println(e); } } }
-
您作为 cmets 发布的 sn-ps 完全不可读(也许 Jon Skeet 能够阅读此内容,但这里的大多数用户不能)。编辑您的问题以将它们添加到问题正文中,格式正确。
-
为什么不在使用 Join 的单个 SQL 请求中执行此操作?