实现数据更新操作
数据更新操作一共分为三种,分别是:数据增加,修改,删除。Statement接口最大的一个特点就是可以直接执行一个标准的Sql语句
实现数据增加,删除和修改之类的类似
补充说明:创建用于将SQL语句发送到数据库的Statement对象。通常使用Statement对象执行不带参数的SQL语句。 如果同一条SQL语句多次执行,则使用PreparedStatement对象可能会更有效。
package 数据库;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class Statement数据操作接口 {
private static final String driver="com.mysql.cj.jdbc.Driver";
private static final String url="jdbc:mysql://localhost:3306/booktest?"
+ "characterEncoding=utf-8&serverTimezone=UTC";
private static final String user="root";
private static final String pass="123";
public static void main(String[] args) throws Exception{
String sql1="insert into Student values" //实现数据的增加
+ "('2018044','张三','男',18,'CS')";
String sql2="update Student\r\n" + //实现数据的修改
"SET Sage=22\r\n" +
"where Sno='201215121'";
String sql3="DELETE from Student\r\n" + //实现数据删除
"where Sno='201215125'";
Connection con=null;
Class.forName(driver);
con=DriverManager.getConnection(url,user,pass);
Statement state=con.createStatement();
//数据库操作对象
int count=state.executeUpdate(sql3);
// 返回数据更新操作影响的行数
System.out.println("更新操作影响的行数:"+count);
con.close();
}
}
实现数据查询操作
数据查询操作会利用Sql语句向数据库发出SELECT命令,而查询的结果如果要返回给程序进行处理,就必须通过ResultSet接口来进行封装。ResultSet是一种可以保存任意查询结果的集合结构,所有的查询结果会通过ResultSet在内存中形成一个虚拟表,而后开发者可以根据数据行的索引,依照数据类型获取列数据内容。
下面给出一段数据查询的代码
package 数据库;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Statement数据操作接口{
private static final String driver="com.mysql.cj.jdbc.Driver";
private static final String url="jdbc:mysql://localhost:3306/booktest?"
+"serverTimezone=UTC&characterEncoding=utf-8";
private static final String user="root";
private static final String pass="123";
public static void main(String args[]) throws Exception {
String sql="SELECT Sno,Sname,Ssex,Sage,Sdept FROM `student`";
Connection con=null;
try {
Class.forName(driver);
con=DriverManager.getConnection(url,user,pass);
Statement state=con.createStatement(); //数据库操作对象
ResultSet rs=state.executeQuery(sql); //执行查询
while(rs.next()) { //返回获取结果集数据
String Sno=rs.getString(1); //返回第一个查询数据
String Sname=rs.getString(2); //返回第二个查询数据
String Ssex=rs.getString(3);
int Sage=rs.getInt(4);
String Sdept=rs.getString(5);
System.out.println("Sno:"+Sno+" Sname:"+Sname+" Sex:"+Ssex+" Sage:"+Sage+" Sdept:"+Sdept);
}
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}
con.close();
}
}