本章目标
可以使用Connection对象取得Statement实例
可以使用Statement进行数据增加、修改、删除操作
Statement接口
数据库可以连接之后,下面就可以进行数据库的具体操作了,如果要想对数据库进行操作,则肯定要使用Statement接口完成,此接口可以使用Connection接口中提供的createStatement()方法实例化。此接口中定义了以下的常用方法。
实例操作一:执行数据库插入操作
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 删除一条记录
* */
}