当前位置: 首页 > 知识库问答 >
问题:

通过替换给定列的值来显示表中的行

宗翔宇
2023-03-14

我有两个表,部门和员工都有公共列department\u id

首先,我显示了departments表中的部门名称,然后显示了employees表中的Employeer\u 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);

     }
   }
}

共有1个答案

江琦
2023-03-14

我将假设您的employees和department表具有外键关系(或逻辑键关系),这样employees就可以。部门名称=部门。部门名称。一个简单的数据库连接应该可以完成这项工作。

此外,如果要按部门名称(或任何其他变量)搜索,请使用PreparedStatement,而不是语句。

String sql = "select e.* from employee e,  department d where d.department_name = ? and d.department_name=e.deparment.name"); )// ? will be replaced by a parameter obtained from a user

PreparedStatement stmt = con.prepareStatement(sql);

stmt.setString(1, deptName); //deptName is obtained from the user

ResultSet rs = stmt.executeQuery();
.....
 类似资料:
  • 无法在表列中发送值。当我试图使用Selenium在列中插入值时,我得到了不同的错误。 > 然后单击并编辑该值。 传递的值未插入表列中。但是我可以单击Tables列。我的考试通过了。 然后尝试设置值。它显示超时的错误。 我再次使用div/span组合作为XPath,并编辑了该值。但这并没有反映在表中。 在这里我没有得到任何错误。但保存后未反映该值。 我给元素添加了各种格式。 div/[id] HTM

  • 问题内容: 我有一个列表,我想用condition()返回True的None替换值。 例如,如果条件检查bool(item%2)应该返回: 最有效的方法是什么? 问题答案: 使用列表理解来构建新列表: 您可以根据需要修改原始列表,但实际上并不能节省时间: 以下是(Python 3.6.3)演示非节省时间的时间: 和Python 2.7.6计时:

  • 问题内容: 如何通过字典替换熊猫系列中的值已被询问并多次提出。 推荐的方法是要么使用,有时也使用如果所有的系列值是在字典键找到。 但是,使用性能的速度通常不合理,通常比简单的列表理解速度慢倍。 替代方法具有良好的性能,但是仅当在字典中找到所有键时才建议使用。 为什么这么慢,如何提高性能? 注意:此问题未标记为重复问题,因为它正在寻找有关在给定不同数据集的情况下何时使用不同方法的具体建议。这在答案中

  • 问题内容: 如果我有清单: 然后声明另外两个列表: 我怎么可以作为指数的元素,然后设置相应的元素来,即运行后,应该是。 显然,我可以通过for循环来做到这一点: 但是还有其他方法吗?我可以以某种方式使用吗? 问题答案: 您的代码最大的问题是它不可读。Python代码规则第一,如果它不可读,没人会花足够长的时间看得出来所有有用的信息。始终使用描述性变量名。几乎没有发现代码中的错误,让我们以好名字,慢

  • 我有一个非常简单的问题。然而,我所能找到的都是非常复杂的答案,并不完全符合我的需求。 最接近的,我在这里发现: 弗洛德尔和埃迪的回答(data.table) 但是,我想额外指定如何根据不同列中的值处理指定列中的NA。 我有一个data.table,其中包含NA列,其中< code>fac是一个因子变量。 我想做的是根据< code>iso3c中的值将值< code>D和< code>E分配给< c