博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java中通过JDBC远程连接Oracle数据库
阅读量:7300 次
发布时间:2019-06-30

本文共 2422 字,大约阅读时间需要 8 分钟。

通过jdbc连接数据库,拢共分三步:

第一步:下载一个,然后把jar包扔到项目里并add to build path;

第二步:去本地oracle文件夹下找到“TNSNAMES.ORA”文件,打开找到对应数据库的连接字符串,作为jdbc的连接字符串;

第三步:写代码,通过jdbc连接数据库。

从网上找了段,做了下修改。以下为查询数据库表中所有字段及字段值类型,遍历数据库表中所有数据(其中xxx均为需要替换的信息):

import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;public class ConnectDB {    public static void main(String[] args) {        connectDB();    }    public static void connectDB() {        Connection con = null;        PreparedStatement pre = null;        ResultSet results = null;        ResultSetMetaData resultSetMetaData = null;        try {            Class.forName("oracle.jdbc.driver.OracleDriver");            System.out.println("开始尝试连接数据库!");            // 必须用oracle文件夹下"tnsnames.ora"配置文件中配置的连接字符串进行远程连接数据库            String url = "jdbc:oracle:" + "thin:@(DESCRIPTION =" + "(ADDRESS_LIST ="                    + "(ADDRESS = (PROTOCOL = TCP)(HOST = xxx)(PORT = xxx))" + ")" + "(CONNECT_DATA ="                    + "(SERVICE_NAME = xxx)" + ")" + ")";            String user = "xxx";            String password = "xxx";            con = DriverManager.getConnection(url, user, password);            System.out.println("连接成功!");            String sql = "select * from xxx";            pre = con.prepareStatement(sql);            System.out.println("开始执行SQL语句!");            results = pre.executeQuery();            resultSetMetaData = results.getMetaData();            int columnCount = resultSetMetaData.getColumnCount();            // 获取数据库表所有字段名及字段值类型            for (int i = 1; i <= columnCount; i++) {                System.out.println(resultSetMetaData.getColumnName(i) + ":" + resultSetMetaData.getColumnTypeName(i));            }            while (results.next()) {                for (int i = 1; i <= columnCount; i++) {                    System.out.print(results.getString(i)+"\t\t");                }                System.out.println();            }        } catch (Exception e) {            e.printStackTrace();        } finally {            try {                if (results != null)                    results.close();                if (pre != null)                    pre.close();                if (con != null)                    con.close();                System.out.println("数据库连接已关闭!");            } catch (Exception e) {                e.printStackTrace();            }        }    }}

 

转载地址:http://qibnm.baihongyu.com/

你可能感兴趣的文章
extern "C"与C++中的C函数调用(4)—— 如何在C中调用C++函数
查看>>
计算几何 模板
查看>>
“The Psychology of Cross Country”笔记
查看>>
10 Web Apps for Developers 为开发者提供的10款Web应用程序
查看>>
python之正则表达式
查看>>
Shell命令-文件及目录操作之touch、tree
查看>>
修改K/3 Cloud管理中心端口
查看>>
C#语言课程11月7日
查看>>
linux日常1-踢出用户
查看>>
MFC多文档应用程序同时显示两个视图
查看>>
github快速入门(一)
查看>>
PHP全栈开发(八):CSS Ⅸ dispaly & visibility
查看>>
正则表达式
查看>>
【Oracle 12c】最新CUUG OCP-071考试题库(56题)
查看>>
C#使用Xamarin开发可移植移动应用进阶篇(6.使用渲染器针对单个平台自定义控件..很很很很重要..),附源码...
查看>>
实验二
查看>>
简单安装ubuntu
查看>>
20160331javaweb 之JSP page 指令
查看>>
用Ruby批量获取电影的评分与影片信息
查看>>
2019.5.29 区块链论文翻译
查看>>