使用jdbc连接并操作Oracle数据库(增删改查IDUS)
[oracle@zaibei-db ~]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.4.0 Production on Thu May 10 12:48:03
Copyright (c) 1982, , Oracle.All rights
reserved.
SQL> conn / as sysdba;
SQL> CREATE USER jdbc_user IDENTIFIED BY 123456 DEFAULT
TABLESPACE users QUOTA UNLIMITED ON users;
SQL> GRANT connect,resource TO jdbc_user;
SQL> conn jdbc_user;
Enter password:
Connected.
SQL> CREATE TABLE t_user (user_id int,user_name
varchar2(10),create_date date);
SQL> SELECT * FROM t_user;
no rows selected
SQL> !ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN
link/loopback
00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope
host lo
inet6 ::1/128 scope
host
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether
c6:2e:7a:3a:d8:d9 brd ff:ff:ff:ff:ff:ff
inet 172.16.10.68/24 brd
172.16.10.255 scope global eth0
inet6
fe80::c42e:7aff:fe3a:d8d9/64 scope link
valid_lft forever preferred_lft forever
1、连接
[root@zaibei-db ~]# mkdir -p /root/scripts/java/src
[root@zaibei-db ~]# mkdir -p /root/scripts/java/library
[root@zaibei-db ~]# mkdir -p /root/scripts/java/output
[root@zaibei-db ~]# cp
/u01/app/oracle/product/11.2.0/db_1/jdbc/lib/ojdbc6.jar
/root/scripts/java/library/
[root@zaibei-db ~]# cd /root/scripts/java/output
[root@zaibei-db output]# mkdir -p
/root/scripts/java/src/JDBC_Test
[root@zaibei-db output]# vi
/root/scripts/java/src/JDBC_Test/JDBC_Test.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.*;
public class JDBC_Test
{
//
orcl为oracle数据库中的数据库名,localhost表示连接本机的oracle数据库,1521为连接的端口号
private static String
url="jdbc:oracle:thin:@//172.16.10.68:1521/duporcl";
//
JDBC_USER为登陆oracle数据库的用户名,123456为用户名system的密码
private static String
user="JDBC_USER";
private static String
password="123456";
public static Connection
conn;
public static
PreparedStatement ps;
public static ResultSet
rs;
public static Statement
st;
// 连接数据库的方法
public void
getConnection()
{
try
{
//初始化驱动包
Class.forName("oracle.jdbc.driver.OracleDriver");
//根据数据库连接字符,名称,密码给conn赋值
conn=DriverManager.getConnection(url, user, password);
}
catch (Exception e)
{
e.printStackTrace();// TODO: handle exception
}
}
//
测试能否与oracle数据库连接成功
public static void
main(String[] args)
{
JDBC_Test basedao=new JDBC_Test();
basedao.getConnection();
if(conn==null)
{
System.out.println("与oracle数据库连接失败!");
}
else
{
System.out.println("与oracle数据库连接成功!");
}
}
}
[root@zaibei-db output]# javac
-Djava.ext.dirs=/root/scripts/java/library
/root/scripts/java/src/JDBC_Test
public static void
insert()
{
conn = getConnection(); // 首先要获取连接,即连接到数据库
try
{
String sql = "INSERT INTO t_user(user_id, user_name,
create_date)" + " VALUES (0001, 'sylor',
sysdate)";// 插入数据的sql语句
st =
(Statement) conn.createStatement();// 创建用于执行静态sql语句的Statement对象
int count
= st.executeUpdate(sql);//
执行插入操作的sql语句,并返回插入数据的个数
System.out.println("向t_user表中插入 " + count + " 条数据");
//输出插入操作的处理结果
conn.close();//关闭数据库连接
}
catch (SQLException e)
{
System.out.println("插入数据失败" + e.getMessage());
}
}
public static void
update()
{
conn = getConnection(); //同样先要获取连接,即连接到数据库
try
{
String sql
= "update t_user set user_name='sylor01' where user_name =
'sylor'";// 更新数据的sql语句
st =
(Statement) conn.createStatement();//创建用于执行静态sql语句的Statement对象,st属局部变量
int count
= st.executeUpdate(sql);// 执行更新操作的sql语句,返回更新数据的个数
System.out.println("t_user表中更新 " + count + "
条数据");//输出更新操作的处理结果
conn.close();//关闭数据库连接
}
catch (SQLException e)
{
System.out.println("更新数据失败");
}
}
public static void query()
{
conn = getConnection(); //同样先要获取连接,即连接到数据库
try
{
String sql
= "SELECT user_id,user_name,create_date FROM
t_user";//
查询数据的sql语句
st =
(Statement) conn.createStatement();//创建用于执行静态sql语句的Statement对象,st属局部变量
ResultSet
rs = st.executeQuery(sql);//执行sql查询语句,返回查询数据的结果集
System.out.println("最后的查询结果为:");
while
(rs.next()) // 判断是否还有下一个数据
{
// 根据字段名获取相应的值
int id = rs.getInt("user_id");
String name = rs.getString("user_name");
java.text.SimpleDateFormat f = new
;
;
//输出查到的记录的各个字段的值
System.out.println(";
System.out.println(id + " " + name + " " + date02 + "
");
//使用 SimpleDateFormat 转换格式后的结果为
System.out.println("SimpleDateFormat格式输出create_date字段值的结果为:");
System.out.println(id + " " + name + " " + f.format(date02) +
" ");
}
conn.close();//关闭数据库连接
}
catch (SQLException e)
{
System.out.println("查询数据失败");
}
}
public static void
delete()
{
conn = getConnection(); //同样先要获取连接,即连接到数据库
try
{
String sql
= "DELETE FROM t_user WHERE name = 'lili'";// 删除数据的sql语句
st =
(Statement) conn.createStatement();//创建用于执行静态sql语句的Statement对象,st属局部变量
int count
= st.executeUpdate(sql);// 执行sql删除语句,返回删除数据的数量
System.out.println("t_user表中删除 " + count + "
条数据\n");//输出删除操作的处理结果
conn.close();//关闭数据库连接
}
catch (SQLException e)
{
System.out.println("删除数据失败");
}
}
public static Connection
getConnection()
{
Connection con = null;//创建用于连接数据库的Connection对象
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");//
加载oracle数据驱动
con =
DriverManager.getConnection("jdbc:oracle:thin:@//172.16.10.68:1521/duporcl",
"JDBC_USER", "123456");// 创建oracle数据连接
//Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动
// con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/myuser",
"root", "root"); // 创建mysql数据连接
}
catch (Exception e)
{
System.out.println("数据库连接失败" + e.getMessage());
}
return con; //返回所建立的数据库连接
}
}
[root@zaibei-db output]# javac
-Djava.ext.dirs=/root/scripts/java/library/
/root/scripts/java/src/JdbcToOracle/JdbcToOracleIdus.java -d
/root/scripts/java/output/
[root@zaibei-db output]# java
-Djava.ext.dirs=/root/scripts/java/library/ JdbcToOracleIdus
向t_user表中插入 1 条数据
t_user表中更新 1 条数据
删除数据失败
最后的查询结果为:
java.util.Date格式输出create_date字段值的结果为:
1 sylor01 -05-12 12:31:22.0
SimpleDateFormat格式输出create_date字段值的结果为:
1 sylor01 -05-12 12:31:22
...The end!!!
如果觉得《jdbc链接mysql按照id查询_使用jdbc连接并操作Oracle数据库(增删改查IDUS)》对你有帮助,请点赞、收藏,并留下你的观点哦!