JDBC 查询数据练习

package come.hanqi;

import java.sql.*;
import java.util.Scanner;

public class test4 {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        System.out.println("请选择您要输入的类型:");
        System.out.println(" " + "a:身份证号");
        System.out.println(" " + "b:准考证号");
        String s = sc.next();

        Connection conn = null;
        try
        {
            Class.forName("oracle.jdbc.OracleDriver");
            String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
            conn = DriverManager.getConnection(url, "test1", "574004");
            System.out.println("连接数据库成功");

            Statement st = conn.createStatement();
            if (s.equals("a"))
            {
                for (int i = 0; i < 9; i++)
                {
                    System.out.println("请输入身份证号:");
                    String ID = sc.next();
                    String IDCard = "select * from EXAMSTUDENT t where idcard=" + ID;
                    ResultSet rs = st.executeQuery(IDCard);

                    if (ID != "select idcard from EXAMSTUDENT t ")
                    {
                        System.out.println("输入有误请重新输入");
                        i--;

                    }
                    while (rs.next())
                    {
                        String fl = rs.getString(1);
                        String ty = rs.getString(2);
                        String id = rs.getString(3);
                        String ex = rs.getString(4);
                        String stu = rs.getString(5);
                        String lo = rs.getString(6);
                        String ga = rs.getString(7);

                        System.out.println("flowid=" + fl + ",type=" + ty + ",idcard=" + id + ",examcard=" + ex + ",姓名:"
                                + stu + ",籍贯:" + lo + ",分数:" + ga);
                    }

                }

            }
            else if (s.equals("b"))
            {
                for (int i = 0; i < 9; i++)
                {
                    System.out.println("请输入准考证号:");
                    String EX = sc.next();
                    String EXcard = "select * from EXAMSTUDENT t where examcard=" + EX;
                    ResultSet rs = st.executeQuery(EXcard);

                    if (EX != "select EXAMCARD from EXAMSTUDENT t ")
                    {
                        System.out.println("您输入有误,请重新输入");
                    }
                    while (rs.next())
                    {
                        String fl = rs.getString(1);
                        String ty = rs.getString(2);
                        String id = rs.getString(3);
                        String ex = rs.getString(4);
                        String stu = rs.getString(5);
                        String lo = rs.getString(6);
                        String ga = rs.getString(7);

                        System.out.println("flowid=" + fl + ",type=" + ty + ",idcard=" + id + ",examcard=" + ex + ",姓名:"
                                + stu + ",籍贯:" + lo + ",分数:" + ga);
                    }
                }
            }
            else
            {
                System.out.println("您输入有误");
            }

        }
        catch (Exception e)
        {
            // TODO 自动生成的 catch 块
            e.printStackTrace();
            System.out.println("连接数据库失败");
        }

    }

}

时间: 2024-11-10 21:58:01

JDBC 查询数据练习的相关文章

9.1(JDBC概述)、(JDBC连接数据库),(JDBC查询数据)

2:JDBC的配置 下载地址:https://dev.mysql.com/downloads/file/?id=470333 这里下载到了C:\Users\王家丰\AppData\Local\Microsoft\Windows\INetCache\IE\Z2F72PPH\mysql-connector-java-5.1.42 3:JDBC连接数据库的步骤 一:注册mysql驱动:两种方式 项目中用的方式:Class.forName("com.masql.jdbc.Driver"); 二

JDBC查询数据实例

在本教程将演示如何在JDBC应用程序中,查询数据库的一个表中数据记录. 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,以在给定模式中数据库表中查询数据记录. 要执行以下示例,需要用实际用户名和密码替换这里用户名(username)和密码(password). MySQL或数据库已启动并运行. 所需步骤 使用JDBC应用程序向表中查询数据记录需要以下步骤: 导入包:需要包含包含数据库编程所需的JDBC类的包. 大多数情况下,使用import java.sql.*就足够了.

JDBC连接数据库方法的封装,以及查询数据方法的封装(精华)

主要内容: 一般的连接数据库测试 把连接数据库的方法封装成一个类和测试 一个简单的插入表实例 查询数据实例 封装查询的数据库的信息 封装信息后的查询数据库 一.一般的数据库连接测试 1 public class TestConnection1 { 2 public static void main(String[] args) throws Exception { 3 Class.forName("com.mysql.jdbc.Driver"); 4 String url="

查询数据过多页面反应慢引入缓存解决方案(Redis、H2)

问题:原系统查询接口不支持分页也不可能加入分页支持,导致Ajax查询数据过多,返回数据达到2W多条记录时响应已经极慢,查询功能不要求数据实时性,页面反应速度极慢.体验不好:经排查是由于数据量过大导致写回页面的时候慢,实现是直接Servlet输出流写到页面上(output.write(buffer, 0, b)): 需求变更:加快页面相应速度,页面要有分页功能,可以改变原接口 在这种情况下有两种解决方案: 1.前端js分页 2.加入第三方缓存部件(内存数据库等) 两种解决方案的缺点: 第一种方案的

jdbc查询sybase参数过多问题

公司的数据库一直是sybase,用起来也挺好的,最新客户现场出现一个问题,数据无法传输了,看日志非常简单,一下就定位到了原因. 很简单,参数超过了2000个,因为这个功能是根据主表的主键查询子表,方法用的是where 主表id in (?,?,?,?--)方式,参数问号最多是是2000个,不过这就奇怪了,直接使用sql查询sybase,5000个参数也没问题,看来是jdbc驱动的问题了. 我们公司用sybase也有十多年了,这方面还是很有研究的,请教了几个人,jdbc连接sybase的驱动之前用

Mycat(6):聊天消息表,按月分表 java客户端跨月查询数据

本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/47039103 未经博主允许不得转载. 1,业务需求 上次分析聊天业务按照月进行拆.http://blog.csdn.net/freewebsys/article/details/47003577 具体拆分方案已经有了: 但是在操作的时候还是有点小问题,但基本上是按照这个设计实现的. 首先是mycat的,mycat正式版本是1.3.0.3-release,但是这个不包括Parti

jdbc获取数据具体过程

下面是个最简单的使用jdbc取得数据的应用.在例子之后我将分成4步,分别是①取得连接,②创建PreparedStatement,③设置参数,④执行查询,来分步分析这个过程.除了设置参数那一步之外,其他的我都画了时序图,如果不想看文字的话,可以对着时序图 .文中的第4步是组装MySQL协议并发送数据包的关键,而且在这部分的(b)环节,我对于PreparedStatement的应用有详细的代码注释分析,建议大家关注一下. Java代码 public class DBHelper { public s

如何使用JDBC查询所有记录

public class JdbcDao {    private Connection conn=null;   //数据库连接对象    private String strSql=null; //JDBC连接数据库    public JdbcDao() {                String driver ="com.mysql.jdbc.Driver";        try {            Class.forName(driver);          

day15 分页及 JDBC 大数据的处理

day15 分页及 JDBC 大数据的处理 1. 分页实现(重点) 1.1 自建 EL 表达式去处理简介过长问题 2. 完成客户关系管理案例 3. jdbc 大数据的处理 4. jdbc 实现数据库批处理 5. jdbc 获取数据库自动生成的主键和调用存储过程 5.1 数据库自动生成的主键 5.2 jdbc 调用存储过程(procedure) - 金融证券领域用的特多 6. ResultSet 对结果集进行滚动 Author:相忠良 Email: [email protected] 起始于:Ju