十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
下面是用JAVA 通过JDBC连接 Oracle的步骤
网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了芒康免费建站欢迎大家使用!
希望对你有帮助
(1)装载并注册数据库的JDBC驱动程序
载入JDBC驱动:
Class.forName("oracle.jdbc.driver.OracleDriver");
注册JDBC驱动:
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
(2)建立与数据库的连接
要建立与数据库的连接,首先要创建指定数据库的URL。连接数据库的URL对象,利用DriverManager 的getConnection方法建立的。数据库URL对象与网络资源的统一资源定位类似,其构成格式如下:
jdbc:subProtocol:subName://hostname:port;DatabaseName=ⅹⅹⅹ
其中:
jdbc表示当前通过Java的数据库连接进行数据库访问;
subProtocol表示通过某种驱动程序支持的数据库连接机制;
subName表示在当前连接机制下的具体名称;
hostname表示主机名;
port表示相应的连接端口;
DatabaseName表示要连接的数据库的名称。
这里以与Oracle数据库的连接为例:
连接Oracle 8/8i/9i数据库(用thin模式)
url = jdbc:oracle:thin:@hostip:1521:oracleSID;
注意:hostip指主机的ip地址,oracleSID指数据库的SID。
再者确定连接数据库的用户名与密码,即user和password 的值:
user = “ⅹⅹⅹ “;
password = “ⅹⅹⅹ“;
最后使用如下语句:
Connection con=java.sql.DriverManager.getConnection(url,user,password);
(3)创建Statement对象
例如:
Statement stmt = con.createStatement();
(4)调用并执行SQL语句
例如:
String sql = “select a,b,c from table1";//table1为你所要查询的表名,a,b,c为所要查询的字段
ResultSet rs = stmt.executeQuery(sql);
(5)访问ResultSet中的记录集并从中取出记录
例如:
rs.next( );
rs.absolute(4);
String col1=rs.getString(1);
……..
(6)依次关闭ResultSet、Statement和Connection对象
例如:
rs.close();
stmt.close();
con.close();
如何利用JDBC连接并操作Oracle数据库
import java.sql.*;
public class MyJDBC {
public MyJDBC() {
}
public static String getConnectionUrl(){
return "jdbc:oracle:thin:@DEREK:1521:OracleDB";
}
public static Connection getConnection(){
Connection con = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection(getConnectionUrl(),"dengzhao", "780128");
if (con != null){
System.out.println("连接成功!");
}
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
public static void closeConnetion(ResultSet rs, Statement stmt, Connection con){
try {
if (rs != null){
rs.close();
}
if (stmt != null){
stmt.close();
}
if (con != null){
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception {
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
try {
con = getConnection();
stmt = con.createStatement();
String sql = "select * from students";
rs = stmt.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getString(1));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
closeConnetion(rs, stmt, con);
}
}
}
楼主您好
1.在动手先代码之前,我们先把环境配置妥善。先从安装了Oracle的数据库服务器中,找到
Oracle安装目录,然后将该目录下的jdbc\lib\classes12.jar文件拷贝到WEB发布服务器的某个目录。假设就直接放在C:\根目录下吧,然后把该路径添加到„系统--高级--环境变量‟
中变量名为„CLASSPATH‟的值中,如:
D:\Program Files\SQLLIB\java\db2java.zip;D:\Program
Files\SQLLIB\java\runtime.zip;c:classes12.jar;
也就是让java能够找到这个包。
2
1.注册加载驱动
驱动名:DRIVER="oracle.jdbc.driver.OracleDriver";
Class.forName("驱动类名");
3
2.获得连接
数据库地址: URL="jdbc:oracle:thin:@127.0.0.1:1521:ORCL";
Connection conn = DriverManager.getConnection(数据库地址,用户名,密码);
System.out.println("连接成功");
4
3.创建Statement对象
Statement
类的主要是用于执行静态 SQL 语句并返回它所生成结果的对象。通过Connection 对象的
createStatement()方法可以创建一个Statement对象。例如:Statement statament =
connection.createStatement(); 具体示例创建Statement对象
Statement statamentMySQL =connectMySQL.createStatement();
文件用:ojdbc6.jar
/**
* 一个非常标准的连接Oracle数据库的示例代码
*/
public void testOracle()
{
Connection con = null;// 创建一个数据库连接
PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
ResultSet result = null;// 创建一个结果集对象
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序
System.out.println("开始尝试连接数据库!");
String url = "jdbc:oracle:thin:@127.0.0.1:1521:XE";// 127.0.0.1是本机地址,XE是精简版Oracle的默认数据库的SID
// 如果是服务名,则用String url = "jdbc:oracle:thin:@127.0.0.1:1521/ORCL
String user = "system";// 用户名,系统默认的账户名
String password = "147";// 你安装时选设置的密码
con = DriverManager.getConnection(url, user, password);// 获取连接
System.out.println("连接成功!");
String sql = "select * from student where name=?";// 预编译语句,“?”代表参数
pre = con.prepareStatement(sql);// 实例化预编译语句
pre.setString(1, "刘显安");// 设置参数,前面的1表示参数的索引,而不是表中列名的索引
result = pre.executeQuery();// 执行查询,注意括号中不需要再加参数
while (result.next())
// 当结果集不为空时
System.out.println("学号:" + result.getInt("id") + "姓名:"
+ result.getString("name"));
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
try
{
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
// 注意关闭的顺序,最后使用的最先关闭
if (result != null)
result.close();
if (pre != null)
pre.close();
if (con != null)
con.close();
System.out.println("数据库连接已关闭!");
}
catch (Exception e)
{
e.printStackTrace();
}
}
}