老师,查找各部门收入为部门最低的那些雇员。显示他们的名字,薪水以及部门 ID。
这道题能用一个语句写成这种形式吗?
select last_name,min(salary),department_id from employees group by department_id
老师这个是什么意思呀,是网卡的问题,还是这个软件出问题了
老师,我都是按视频的步骤来的啊(防火墙关闭),为什么一直测试不成功
select last_name,salary from employees where last_name regexp 'o.{1,2}';
我想说这个正则表达式的意思是:查询的结果为o后面只能出现1到2个字符,而并不是o出现一到两次
老师您好,可以麻烦帮我看一下吗,使用preparedStatement还是能全部查到数据库信息,这是什么原因导致的?谢谢!
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; /** * SQL注入测试类 */ public class SqlInjectTest { /** * 体现sql注入 */ public void sqlInTest(String username,int userage){ Connection connection = null; Statement statement = null; ResultSet resultSet = null; try{ //获取连接 connection = JdbcUtils.getConnection(); //创建Statement对象 statement = connection.createStatement(); //定义sql语句 String sql = "select * from users where username = '"+username+"' and userage = "+userage; System.out.println(sql); //执行sql语句 resultSet = statement.executeQuery(sql); //处理结果集 while(resultSet.next()){ int userid = resultSet.getInt("userid"); String name = resultSet.getString("username"); int age = resultSet.getInt("userage"); System.out.println(userid+" "+name+" "+age); } }catch(Exception e){ e.printStackTrace(); }finally { JdbcUtils.CloseResource(resultSet,statement,connection); } } public void noSqlInject(String username,int userage){ Connection connection = null; PreparedStatement ps = null; ResultSet resultSet = null; try{ //获取连接 connection = JdbcUtils.getConnection(); //创建PreparedStatement对象 ps = connection.prepareStatement("select * from users where username = ? and userage = ?"); //绑定参数 ps.setString(1,username); ps.setInt(2,userage); //执行sql resultSet = ps.executeQuery(); //处理结果集 while (resultSet.next()){ int userid = resultSet.getInt("userid"); String name = resultSet.getString("username"); int age = resultSet.getInt("userage"); System.out.println(userid+" "+name+" "+age); } }catch (Exception e){ e.printStackTrace(); }finally { JdbcUtils.CloseResource(resultSet,ps,connection); } } public static void main(String[] args){ SqlInjectTest sit = new SqlInjectTest(); // sit.sqlInTest("oldlu' or 1=1 --",28); sit.noSqlInject("oldlu' or 1=1 --",28); } }
这里的输入流不需要关闭吗。
老师,我的运行报错,然后按照网上的方法删除几个连接参数后, 结果能出来,但是还好抱警告 package com.itbz.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; /** * 获取数据库连接测试类 */ public class JdbcTest { public static void main(String[] args) throws ClassNotFoundException, SQLException { //连接mysql数据库的URL String url = "jdbc:mysql://localhost:3306/itbz"; //连接数据库用户名 String name = "root"; //连接数据库密码 String psw = "root"; //通过反射实现数据库驱动的加载与与注册 Class.forName("com.mysql.jdbc.Driver"); //通过DriverManger对象获取数据库连接对象 Connection connection = DriverManager.getConnection(url,name,psw); System.out.println(connection); } }
老师,模糊匹配中文怎么查询不出来结果呢?
String sql = Object[] param = Object[]{+username+}
匹配中文的,是不是这里写的需要改,英文匹配是没问题的
老师,视频中安装完数据库有多个文件夹,但我安装后只有两个文件夹,是否是安装Oracle失败,还是电脑版本问题。
这里也没有讲索引的使用吧,只创建了索引,然后呢?126索引的使用这一课只有在议论什么时候用索引和什么时候不用索引,我应该没看漏吧。我还不知道怎么使用索引,就over了?
SQL> select e.last_name,e.department_id,e.salary from employees e where e.salary in(select min(e.salary) from employees e group by e.department_id);
老师,这里面子查询按照department_id分组了,主查询就也同样安装department_id分组了吗?
老师,我这个出了什么问题呀
老师我使用properties就会报错,但是不使用就能把数据数据插入表中,能帮我解答一下嘛
请问老师 这是什么情况 应该如何解决啊
package com.wxc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class Test01Jdbc { //向Departments表中添加一条数据 public void insertDepartments(String department_id,int location_id){ Connection conn=null; Statement state=null; try { //驱动注册 实例化数据库驱动对象 Class.forName("com.mysql.jdbc.Driver"); //创建连接 conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/bjsxt?useUnicode=true&characterEncoding=utf-8&useSSL=false","root","Bugaosun1"); //创建执行SQL的语句statement String sql="insert into departments values(default,'"+department_id+"','"+location_id+"')"; state=conn.createStatement(); int flag=state.executeUpdate(sql); System.out.println(flag); } catch (Exception e) { e.printStackTrace(); }finally { if (state!=null){ try { state.close(); } catch (SQLException e) { e.printStackTrace(); } } if (conn!=null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } public static void main(String[] args){ Test01Jdbc test=new Test01Jdbc(); test.insertDepartments("研发部",8); } }
select e.manager_id ,min(e.salary) from employees e where ((e.manager_id is not null) and (e.salary >6000)) group by e.manager_id order by MIN(e.salary) desc;
老师,第五题这样写为什么输出结果不一样呢?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637