本章目标
可以使用Connection对象取得Statement实例
可以使用Statement进行数据增加、修改、删除操作

 

Statement接口

数据库可以连接之后,下面就可以进行数据库的具体操作了,如果要想对数据库进行操作,则肯定要使用Statement接口完成,此接口可以使用Connection接口中提供的createStatement()方法实例化。此接口中定义了以下的常用方法。

执行数据库更新操作_java


 

实例操作一:执行数据库插入操作

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class InsertDemo01 {
	public static void main(String[] args) throws Exception {
		//oracle.jdbc.driver.OracleDriver 数据库驱动程序
		//jdbc:oracle:thin:gome/gome@localhost:1521:oracle11 连接数据库
		Connection conn=null; //数据库连接
		Statement stmt = null;//数据库操作
		String sql = "insert into consumer" +
				"  (id, name, age, sex, birthday)" + 
				"values" + 
				"  (2, 'chaoyi', 30, '男', sysdate)";
		Class.forName("oracle.jdbc.driver.OracleDriver");  //加载驱动程序
		//连接数据库
		conn=DriverManager.getConnection("jdbc:oracle:thin:gome/gome@localhost:1521:oracle11");  
		stmt = conn.createStatement();//实例化 Statement 对象
		stmt.executeUpdate(sql);//执行数据库更新操作
		stmt.close();//操作关闭
		conn.close();  //数据库关闭
	}
/* 结果:向数据库插入一条数据
 * */
}

 

使用变量
从以上的程序中可以发现,只要执行SQL语句的时候,执行的是一条标准的SQL语句,则肯定可以正常执行,但是程序中的SQL语句中的数据是固定的,如果现在要是想将全部的内容换成变量,则可以按照以下的代码编写:
Statement stmt = null;//数据库操作
int id = 3;//id
String name = "yike";//姓名
int age = 36;//年龄
String sex = "女";//性别
String sql = "update consumer" +
    "   set id = "+id+"," +
    "       name = '"+name+"'," +
    "       age = '"+age+"'," +
    "       sex = '"+sex+"'," +
    "       birthday = sysdate" +
    " where id = 2";//拼凑出一个完整的 SQL 语句

 

实例操作二:执行数据库修改

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class UpdateDemo {
	public static void main(String[] args) throws Exception {
		//oracle.jdbc.driver.OracleDriver 数据库驱动程序
		//jdbc:oracle:thin:gome/gome@localhost:1521:oracle11 连接数据库
		Connection conn=null; //数据库连接
		Statement stmt = null;//数据库操作
		int id = 3;//id
		String name = "yike";//姓名
		int age = 36;//年龄
		String sex = "女";//性别
		String sql = "update consumer" +
						"   set id = "+id+"," + 
						"       name = '"+name+"'," + 
						"       age = '"+age+"'," + 
						"       sex = '"+sex+"'," + 
						"       birthday = sysdate" + 
						" where id = 2";//拼凑出一个完整的 SQL 语句
		Class.forName("oracle.jdbc.driver.OracleDriver");  //加载驱动程序
		//连接数据库
		conn=DriverManager.getConnection("jdbc:oracle:thin:gome/gome@localhost:1521:oracle11");  
		stmt = conn.createStatement();//实例化 Statement 对象
		stmt.executeUpdate(sql);//执行数据库更新操作
		stmt.close();//操作关闭
		conn.close();  //数据库关闭
	}
/* 结果:向数据库修改一条数据
 * */
}

 

实例操作三:执行数据库删除操作

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class DeleteDemo {
	public static void main(String[] args) throws Exception {
		//oracle.jdbc.driver.OracleDriver 数据库驱动程序
		//jdbc:oracle:thin:gome/gome@localhost:1521:oracle11 连接数据库
		Connection conn=null; //数据库连接
		Statement stmt = null;//数据库操作
		int id = 3;//id
		String sql = "delete consumer where id = "+id;//拼凑出一个完整的SQL语句
		Class.forName("oracle.jdbc.driver.OracleDriver");  //加载驱动程序
		//连接数据库
		conn=DriverManager.getConnection("jdbc:oracle:thin:gome/gome@localhost:1521:oracle11");  
		stmt = conn.createStatement();//实例化 Statement 对象
		stmt.executeUpdate(sql);//执行数据库更新操作
		stmt.close();//操作关闭
		conn.close();  //数据库关闭
	}
/* 结果:按 id 删除一条记录
 * */
}