如果要取得Statement接口实例化对象 需要依靠Connection提供的方法完成:
·取得Statement接口对象:public Statement createStatement()throws SQLException
取得数据库接口对象后使用以下两个方法实现数据库操作:
·数据更新:public int executeUpdate()throws SQLException,返回更新行数;
·数据查询:public ResultSet executeQuery()throws SQLException。
范例1:编写数据库脚本
CREATE TABLE member( mid NUMBER, name VARCHAR2(20), birthday DATE DEFAULT SYSDATE, age number(3), note CLOB, CONSTRAINT pk_mid PRIMARY KEY(mid) ); |
数据更新操作:
范例2:数据增加
·INSERT INTO 表名称(列,列,....)VALUES(值,值,...);
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class OracleDemo {
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
public static final String DBURL = "jdbc:oracle:thin:@localhost:1521:acehzh";
public static final String USER = "scott";
public static final String PASSWORD = "tiger";
public static void main(String[] args) throws Exception {
// 1.加载数据库驱动程序,此时不需要实例化,因为容器自己负责管理
Class.forName(DBDRIVER);
// 2.连接数据库
Connection con = DriverManager.getConnection(DBURL, USER, PASSWORD);
// 3.进行数据库操作
Statement sta = con.createStatement();
String sql = "INSERT INTO member(mid,name,birthday,age,note) VALUES "
+ " (myseq.nextval,'张三',TO_DATE('1998-10-10','yyyy-mm-dd'),17,'是个人')";
int len = sta.executeUpdate(sql);
System.out.println("影响的行数据:" + len);
// 4.关闭数据库
con.close();
}
}
==============分割线===============
范例3:数据修改
·语法: UPDATE 表名称 SET 字段=值,....WHERE 更新条件(s);
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class OracleDemo {
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
public static final String DBURL = "jdbc:oracle:thin:@localhost:1521:acehzh";
public static final String USER = "scott";
public static final String PASSWORD = "tiger";
public static void main(String[] args) throws Exception {
// 1.加载数据库驱动程序
Class.forName(DBDRIVER);
// 2.连接数据库
Connection con = DriverManager.getConnection(DBURL, USER, PASSWORD);
// 3.数据库操作
Statement sta = con.createStatement();
// 修改表
String sql = "UPDATE member SET name='李四',birthday=SYSDATE,age=30 WHERE mid IN(2,4,5,6,7,8,9,10)";
int len = sta.executeUpdate(sql);
System.out.println("影响行数:" + len);
// 4.关闭数据库
con.close();
}
}
==============分割线===============
范例4:删除数据
·语法:DELETE FORM 表名称 WHERE 删除条件(s);
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class OracleDemo {
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
public static final String DBURL = "jdbc:oracle:thin:@localhost:1521:acehzh";
public static final String USER = "scott";
public static final String PASSWORD = "tiger";
public static void main(String[] args) throws Exception {
// 1.加载数据库驱动程序
Class.forName(DBDRIVER);
// 2.连接数据库
Connection con = DriverManager.getConnection(DBURL, USER, PASSWORD);
// 3.数据库操作
Statement sta = con.createStatement();
// 修改表
String sql = "DELETE FROM member WHERE mid IN(2,4,6,8,10)";
int len = sta.executeUpdate(sql);
System.out.println("删除成功,影响行数:" + len);
// 4.关闭数据库
con.close();
}
}