分享第二十条励志语句
宁可自信,也不要盲目悲观。因为自信是一种力量,即使你的自信有些盲目,也无关大局,你可以在实践中调整心态,找到自己的恰当的位置。如果盲目自卑,你就必然失去一切。
目录
JDBC中执行DQL查询语句后,使用ResultSet存放查询到的结果集数据。
ResultSet resultSet = statement.executeQuery(String sql);
//编写SQL语句 String sql = "SELECT * FROM stu;"; //执行SQL语句 ResultSet resultSet=statement.executeQuery(sql);
ResultSet以表(table)结构进行临时结果的存储,需要通过JDBC API将其中的数据依次获取。
数据行指针:初始位置在第一行数据前,每调用一次boolean next()方法ResultSet的指针向下移动一行,结果为true,表示当前行有数据。
resultSet.getXxx(int columnIndex):根据列的编号顺序获取表中字段的数据,编号从1开始,Xxx表示字段类型。
resultSet.getXxx(String columnLabel):根据列的名称获取表中字段的数据。
//5、对返回的结果进行处理,需要将集合中的数据一个一个的遍历出来
//next()判断集合中是否存在数据,如果存在数据返回true,如果不存在元素返回false
while(resultSet.next()){
//取出元素
String sid =resultSet.getString(1);
String sname =resultSet.getString(2);
int age =resultSet.getInt(3);
String gender = resultSet.getString(4);
System.out.println(sid+"-"+sname+"-"+age+"-"+gender);
}
int getInt(int columnIndex) throws SQLException //获得当前行第N列的int值
int getInt(String columnLabel) throws SQLException //获得当前行名为cloumnLabel列的int值
int getDouble(int columnIndex) throws SQLException //获得当前行第N列的double值
int getDouble(String columnLabel) throws SQLException //获得当前行名为cloumnLabel列的double值
int getString(int columnIndex) throws SQLException //获得当前行第N列的String值
int getString(String columnLabel) throws SQLException //获得当前行名为cloumnLabel列的String值
查询stu表中的所有数据并遍历显示
- package cn.bdqn.demo01;
-
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
-
- public class SelectJDBCByIndex {
-
- public static void main(String[] args) {
-
- try {
- // 1、注册驱动
- Class.forName("com.mysql.jdbc.Driver");
- // 2、获取连接对象
- String url = "jdbc:mysql://127.0.0.1:3306/java221804";
- String user = "root";
- String password = "*****";
- Connection connection = DriverManager.getConnection(url, user,password);
- // 3、获取发送SQL语句的对象
- Statement statement = connection.createStatement();
- // 编写SQL语句
- String sql = "SELECT * FROM stu;";
- // 4、执行SQL语句
- ResultSet resultSet = statement.executeQuery(sql);
- // 5、对返回的结果进行处理,需要将集合中的数据一个一个的遍历出来
- // next()判断集合中是否存在数据,如果存在数据返回true,如果不存在元素返回false
- while (resultSet.next()) {
- // 取出元素
- String sid = resultSet.getString(1);
- String sname = resultSet.getString(2);
- int age = resultSet.getInt(3);
- String gender = resultSet.getString(4);
- System.out.println(sid + "-" + sname + "-" + age + "-" + gender);
- }
- // 6、关闭资源:先开后关,后开先关
- statement.close();
- connection.close();
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
- package cn.bdqn.demo01;
-
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
-
- public class SelectJDBCByColumnName {
-
- public static void main(String[] args) {
-
- try {
- // 1、注册驱动
- Class.forName("com.mysql.jdbc.Driver");// 这个地方Driver后面不要写.class
- // 2、获取连接对象
- String url = "jdbc:mysql://127.0.0.1:3306/java221804";
- String user = "root";
- String password = "*****";
- Connection connection = DriverManager.getConnection(url, user,password);
- // 3、获取发送SQL语句的对象
- Statement statement = connection.createStatement();
- // 编写SQL语句
- String sql = "SELECT * FROM stu;";
- // 5、执行SQL语句
- ResultSet resultSet = statement.executeQuery(sql);
- // 6、对返回的结果进行处理,需要将集合中的数据一个一个的遍历出来
- // next()判断集合中是否存在数据,如果存在数据返回true,如果不存在元素返回false
- while (resultSet.next()) {
- // 取出元素
- String sid = resultSet.getString("sid");
- String sname = resultSet.getString("sname");
- int age = resultSet.getInt("age");
- String gender = resultSet.getString("gender");
- System.out.println(sid + "-" + sname + "-" + age + "-" + gender);
- }
- // 7、关闭资源:先开后关,后开先关
- statement.close();
- connection.close();
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
java.lang.ClassNotFoundException:找不到类(类名书写错误、没有导入jar包)
java.sql.SQLException:与SQL语句相关的异常(约束错误、表名列名字段名书写错误),建议:在客户端工具中测试SQL语句正确后再复制到代码中
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Unknown column原因:列值String类型没有加单引号
Duplicate entry '1' for key 'PRIMARY'原因,主键值已经存在或混乱,更改主键值或清空表
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Unknown column 'password' in原因:可能输入的值类型不对,确定是否插入的元素是对应的值的类型正确
