实现升序降序排列问题
创始人
2024-05-16 03:18:09
0
package com.bjpowernode.jdbc;import java.sql.*;
import java.util.Scanner;/*** 需求:用户在控制台上输入desc则降序,输入asc则升序* 思考:为了完成上述需求是使用Statement还是使用preparedStatement呢?*       这里就不能使用preparedStatement,因为它只适合传值,不能进行字符串的拼接,为此这里只能使用Statement。*       此时如果使用PreparedStatement,通过传值来实现就会出现如下情况:*       String sql = "select ename,sal from emp order by sal ?";*       ps = conn.prepareStatement(sql);*       这时对这条sql语句进行传值,一定是传入一个字符串的操作*       ps.setString(1,"asc");*       传值后的sql语句就变成了如下的情况*       select ename,sal from emp order by sal "asc";双引号是自动添加的。这是错误的sql语句。*       select ename,sal from emp order by sal asc; 这是正确的sql语句。*       为此为了实现排序的需求只能使用Statement。*/
public class 实现升序降序排列问题 {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.print("请输入desc或asc【desc表示降序,asc表示升序:】");String orderKey = s.next();Connection conn = null;Statement stmt = null;ResultSet rs = null;try {//1.注册驱动Class.forName("com.mysql.jdbc.Driver");//2.获取连接conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","******");//3.获取预编译的数据库操作对象stmt = conn.createStatement();//4.执行SQL语句String sql = "select ename,sal from emp order by sal " + orderKey;//这里需要注意sal后面千万别少了一个空格" "。rs = stmt.executeQuery(sql);//5.处理查询结果集while (rs.next()){//String ename = rs.getString("ename");//String sal = rs.getString("sal");System.out.println(rs.getString("ename") + "," + rs.getString("sal"));}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {if (rs != null) {try {rs.close();} catch (SQLException e) {e.printStackTrace();}}if (stmt != null) {try {stmt.close();} catch (SQLException e) {e.printStackTrace();}}if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}}
}

相关内容

热门资讯

新书分析美国中东政策为何屡屡失... 参考消息网12月18日报道英国《金融时报》网站12月6日刊登题为《美国中东政策的悲惨历史》的文章,作...
上海女律师遭“精准围猎”!13... 专业壁垒也难防“精准围猎”。电信诈骗这事真别觉得"我不会上当",连天天泡在法条里靠法律吃饭的律师都没...
性价比与口碑俱佳的房地产拆迁律... 在拆迁领域,选择一位靠谱的律师至关重要。随着城市建设的推进,拆迁项目日益增多,各种拆迁纠纷也随之而来...
太原公安专项严打扒窃犯罪 本报讯(记者赵灵芝)12月17日记者获悉,自11月29日太原市公安机关全面启动打击扒窃违法犯罪专项行...
荣联科技中标:AI法律助手基础... 证券之星消息,根据天眼查APP-财产线索数据整理,根据国家知识产权局专利局12月16日发布的《AI法...
全勤奖险丢!深圳地铁早高峰“趴... “车厢突然停在隧道里,手机信号时断时续,所有人都在看表——完了,这个月300块全勤奖没了。”12月1...
诚信之选:靠谱拆迁律师机构与专... 在拆迁过程中,遇到纠纷或需要专业法律支持时,选择一家诚信的拆迁律师机构和靠谱的专业律师至关重要。 行...
启明信息招标结果:关键设备参数... 证券之星消息,根据天眼查APP-财产线索数据整理,启明信息技术股份有限公司12月15日发布《关键设备...
英官员支持BBC抗辩特朗普索赔... 参考消息网12月18日报道据比利时《政治报·欧洲版》网站12月16日报道,英国卫生部国务大臣斯蒂芬·...
丝芭传媒:鞠婧祎“涉嫌严重经济... 12月18日,丝芭传媒发布致艺人鞠婧祎的最后告知:由于你和你的所谓个人工作室多次罔顾事实、编造谎言,...