java 实现order by_JDBC order by 实例

本篇文章帮大家学习JDBC order by 实例,包含了JDBC order by 实例使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。

本教程介绍了如何使用JDBC应用程序的对表中的数据进行排序的例子。这将使用asc和desc关键字的记录按升序或降序排序。执行下面的示例之前,请确保如下:执行下面的例子中,请使用实际的用户名和密码代替username和password。

MySQL或者其他数据库,正在使用:启动和运行。

所需步骤:

使用JDBC应用程序创建一个新的数据库需要执行以下步骤:导入包:要求包括含有需要进行数据库编程的JDBC类的包。大多数情况下,使用 import java.sql.* 。

注册JDBC驱动程序:要求初始化驱动程序,使它可以与数据库打开一个通信通道。

打开一个连接:要求使用DriverManager.getConnection()方法创建一个Connection对象,它代表与数据库服务器的物理连接。

执行一个查询:需要使用类型语句的对象建立并提交一个SQL语句的记录从表中进行排序。查询利用ASC和DESC子句来按升序和降序顺序排序数据。

清理环境:需要明确地关闭所有的数据库资源相对于依靠JVM的垃圾收集。

示例代码:

复制过去的下面的例子中JDBCExample.java,编译并运行,如下所示://STEP 1. Import required packages

import java.sql.*;

public class JDBCExample {

// JDBC driver name and database URL

static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";

static final String DB_URL = "jdbc:mysql://localhost/STUDENTS";

//  Database credentials

static final String USER = "username";

static final String PASS = "password";

public static void main(String[] args) {

Connection conn = null;

Statement stmt = null;

try{

//STEP 2: Register JDBC driver

Class.forName("com.mysql.jdbc.Driver");

//STEP 3: Open a connection

System.out.println("Connecting to a selected database...");

conn = DriverManager.getConnection(DB_URL, USER, PASS);

System.out.println("Connected database successfully...");

//STEP 4: Execute a query

System.out.println("Creating statement...");

stmt = conn.createStatement();

// Extract records in ascending order by first name.

System.out.println("Fetching records in ascending order...");

String sql = "SELECT id, first, last, age FROM Registration" +

" ORDER BY first ASC";

ResultSet rs = stmt.executeQuery(sql);

while(rs.next()){

//Retrieve by column name

int id  = rs.getInt("id");

int age = rs.getInt("age");

String first = rs.getString("first");

String last = rs.getString("last");

//Display values

System.out.print("ID: " + id);

System.out.print(", Age: " + age);

System.out.print(", First: " + first);

System.out.println(", Last: " + last);

}

// Extract records in descending order by first name.

System.out.println("Fetching records in descending order...");

sql = "SELECT id, first, last, age FROM Registration" +

" ORDER BY first DESC";

rs = stmt.executeQuery(sql);

while(rs.next()){

//Retrieve by column name

int id  = rs.getInt("id");

int age = rs.getInt("age");

String first = rs.getString("first");

String last = rs.getString("last");

//Display values

System.out.print("ID: " + id);

System.out.print(", Age: " + age);

System.out.print(", First: " + first);

System.out.println(", Last: " + last);

}

rs.close();

}catch(SQLException se){

//Handle errors for JDBC

se.printStackTrace();

}catch(Exception e){

//Handle errors for Class.forName

e.printStackTrace();

}finally{

//finally block used to close resources

try{

if(stmt!=null)

conn.close();

}catch(SQLException se){

}// do nothing

try{

if(conn!=null)

conn.close();

}catch(SQLException se){

se.printStackTrace();

}//end finally try

}//end try

System.out.println("Goodbye!");

}//end main

}//end JDBCExample

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值