JDBC执行sql语句的方法,execute、executeUpdate、executeQuery 您所在的位置:网站首页 调用数据库语句的命令 JDBC执行sql语句的方法,execute、executeUpdate、executeQuery

JDBC执行sql语句的方法,execute、executeUpdate、executeQuery

2024-06-09 15:40| 来源: 网络整理| 查看: 265

    执行sql是JDBC最重要的一个步骤,可以说是JDBC的灵魂,执行sql 一般有三个方法:execute、executeUpdate、executeQuery

     1、executeUpdate 执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,该方法返回 int 类型的值,显示数据库中改变的行数

用executeUpdate 进行添加的操作

import java.sql.*; public class Dbutil { public static void main(String[] args) { Dbutil.method(); } public static void method(){ Connection conn; Statement statement; ResultSet res; try { Class.forName("com.mysql.jdbc.Driver");//加载驱动 String url="jdbc:mysql://localhost:3306/aaa";//数据库名字aaa String user="root"; String password="root"; conn = DriverManager.getConnection(url, user, password); statement = conn.createStatement(); //定义sql语句,车上放的货物 String sql1="insert into student values(2,'gg',15)"; String sql2="update student set age =100 where id= 1"; int i = statement.executeUpdate(sql2); System.out.println(i); conn.close(); statement.close(); res.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }

     2、executeQuery 方法,用于执行查询语句的方法,执行后返回代表查询结果的ResultSet对象,在ResultSet对象中存储查询产生的结果, ResultSet.next()方法是判断这个结果集中下一行是否有内容,如果有内容,返回true,逐行判断,ResultSet.get×××(参数)方法是用来获取这一行的某一个字段,这里的‘参数’,可以是字段的名字也可以相对来说字段名的位置(从1开始)

import java.sql.*; public class Dbutil { public static void main(String[] args) { Dbutil.select(); } public static void select(){ Connection conn; Statement statement; ResultSet res; try { Class.forName("com.mysql.jdbc.Driver");//加载驱动 String url="jdbc:mysql://localhost:3306/aaa";//数据库名字aaa String user="root"; String password="root"; conn = DriverManager.getConnection(url, user, password); statement = conn.createStatement(); String sql="select * from student where id = 1"; //student为表名,其中有三个字段:id 、name 、age res = statement.executeQuery(sql); while(res.next()){ int id = res.getInt(“id”); String name = res.getString(2); int age = res.getInt(3); System.out.println(id+" "+name+" "+age); } conn.close(); statement.close(); res.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }

     2、execute 方法,既可以执行查询语句,也可以执行增删改语句,返回一个boolean值,表明执行该SQL语句是否返回了ResultSet。 如果执行后第一个结果是ResultSet,则返回true,否则返回false。 下面我们就可以进行判断,如果返回值为true ,则用 statement.getResultSet();方法返回一个ResultSet对象,就可以对ResultSet对象遍历输出,查看结果。

import java.sql.*; public class Dbutil { public static void main(String[] args) { Dbutil.select(); } public static void select(){ Connection conn; Statement statement; ResultSet res; try { Class.forName("com.mysql.jdbc.Driver");//加载驱动 String url="jdbc:mysql://localhost:3306/aaa";//数据库名字aaa String user="root"; String password="root"; conn = DriverManager.getConnection(url, user, password); statement = conn.createStatement(); String sql="select * from student where id = 1"; //student为表名,其中有三个字段:id 、name 、age boolean execute = statement.execute(sql); if(execute ){ res = statement.getResultSet(); while(res.next()){ int id = res.getInt(“id”); String name = res.getString(2); int age = res.getInt(3); System.out.println(id+" "+name+" "+age); } } conn.close(); statement.close(); res.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有