`
zht1933
  • 浏览: 224193 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 通过调用JDBC连接Oracle;执行SQL*PlUS 导入sql脚本

阅读更多

package com.zht;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JDBC_IMP {

 private String dbUrl = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";
 private String theUser = "test";
 private String thePw = "sa";
 private Connection c = null;
 private Statement conn;
 private ResultSet rs = null;

 public void conJDBC() {
  try {
   System.out.println("开始连接");
   Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
   c = DriverManager.getConnection(dbUrl, theUser, thePw);
   conn = c.createStatement();
   System.out.println("连接正常----------");
  } catch (Exception e) {
   System.out.println("连接异常");
  }
 }

 public boolean executeUpdate(String sql) {
  try {
   conn.executeUpdate(sql);
   return true;
  } catch (SQLException e) {
   e.printStackTrace();
   return false;
  }
 }

 public ResultSet executeQuery(String sql) {
  rs = null;
  try {
   rs = conn.executeQuery(sql);
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return rs;
 }

 public void close() {
  try {
   conn.close();
   c.close();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

 public void imp(String fileName) {
  try {
   System.out.println("导入开始-----");
   // 登网站
   Process process = Runtime
     .getRuntime()
     .exec(
       "sqlplus test/sa@orcl @g:/ccc.sql commit on");
   System.out.println("导入结束-----");
  } catch (Exception e) {
   System.out.println("导入异常-----");
  }
 }

 public static void main(String[] args) {
  ResultSet rs;
  JDBC_IMP conn = new JDBC_IMP();
  conn.conJDBC();
  rs = conn.executeQuery("select * from aaa");
  try {
   while (rs.next()) {
    System.out.println(rs.getInt(1) + "=====" + rs.getInt(2));
   }
   // 查询到的信息写入到本地sql文件
   // 开始进行数据库导入操作
   conn.imp("");
  } catch (Exception e) {
   e.printStackTrace();
  } finally {
   conn.close();
   System.out.println("连接关闭");
  }

 }

}

分享到:
评论

相关推荐

    Java调用sqlplus执行定制的sql脚本

    在IT行业中,数据库...总之,Java调用SQL*Plus执行定制的SQL脚本是数据库自动化的一个重要手段,通过选择合适的方式,可以大大提高工作效率,减少人为错误。理解并熟练掌握这一技巧,对提升你的IT专业技能大有裨益。

    oracle 中使用批处理文件,同时执行,多个.sql文件。

    另外,如果你需要在Java或其他编程语言环境中实现批处理,可以通过JDBC连接Oracle数据库,调用Statement对象的`executeBatch()`方法来执行预编译的SQL语句集合。这通常涉及以下步骤: 1. 创建数据库连接。 2. 预编译...

    oracle 导出xls文件数据的脚本

    `ct.bat`文件可能是一个批处理脚本,它调用SQL*Plus并执行上面的SQL脚本。批处理脚本中通常会包含如下内容: ``` sqlplus username/password@database @c.sql ``` 这行命令会连接到指定的Oracle数据库实例,...

    Java代码备份(windows和Linux)服务器oracle数据库

    1. **JDBC连接Oracle数据库**:使用Java的JDBC API,我们需要引入Oracle的JDBC驱动(ojdbc.jar),并通过`Class.forName()`加载驱动,然后用`DriverManager.getConnection()`建立数据库连接。 2. **执行备份脚本**...

    Oracle linux版客户端 instantclient-sqlplus-linux.x64-12.2.0.1.0.zip

    然后,你可以通过`sqlplus /nolog`启动SQL*Plus,接着输入连接信息来连接到Oracle数据库。 总结来说,"Oracle linux版客户端 instantclient-sqlplus-linux.x64-12.2.0.1.0.zip"提供了在Linux环境下访问Oracle数据库...

    oracle 客户端

    7. **JDBC (Java Database Connectivity)**:Oracle提供了JDBC驱动程序,使得Java应用程序能够连接到Oracle数据库,执行SQL操作。 8. **PL/SQL编译器**:Oracle客户端包含PL/SQL编译器,用于解析和执行PL/SQL代码块...

    DBMS.rar_dbms_dbms java_dbms_java_plus

    对于"实现SQL*PLUS功能",这可能包括执行SQL脚本、显示查询结果、数据库对象的管理等。在Java中,可以通过PreparedStatement批量执行SQL语句,或者使用CallableStatement调用存储过程。为了实现类似SQL*PLUS的控制台...

    免客户端连接oracle数据库

    Oracle数据库提供了多种连接方式,例如使用SQL*Plus、JDBC(Java Database Connectivity)或者ODBC(Open Database Connectivity)。在免客户端场景下,通常使用JDBC或ODBC驱动程序,这些驱动可以集成到应用程序中,...

    spool oracle数据导出

    注意,上述Java代码中的Spool命令实际是在SQL*Plus环境中执行的,因此需要通过某种方式(如`osProcess`或`Runtime.getRuntime().exec()`)在Java程序中调用SQL*Plus并传递上述SQL命令。 四、扩展应用 1. 配合PL/SQL...

    数据库基础与JDBC编程技术

    - 是Oracle自带的一个命令行工具,可以执行SQL语句和PL/SQL脚本。 - **Toad for Oracle** - 是一款流行的第三方Oracle数据库管理工具,提供了图形化界面,支持SQL编辑、调试等功能。 - **SQL Developer** - 是...

    oracle client

    - **sqlplus**: 命令行工具,用于执行SQL查询和PL/SQL脚本。 - **tnsnames.ora**: 网络服务名文件,定义了数据库连接的逻辑名称及其对应的连接参数。 - **ldap.ora**: LDAP配置文件,如果使用LDAP目录服务进行...

    linux-oracle环境变量及自启动脚本

    8. CLASSPATH:Java类库路径,对于使用Java的Oracle组件如JDBC驱动是必要的。 二、Oracle自启动脚本 1. init.ora或spfile:初始化参数文件,定义了数据库的运行参数。在启动数据库时,Oracle会读取这个文件来配置...

    oracle数据库客户端

    8. **JDBC驱动**:Java Database Connectivity驱动程序允许Java应用程序连接到Oracle数据库。Oracle提供了几种类型的JDBC驱动,如 Thin、Thin No-Installer、Universal 和 OCI 驱动,以适应不同的应用场景。 9. **...

    instantclient-sqlplus-windows.x64-11.2.0.4.0

    6. **功能扩展**:除了基本的 SQL 执行,SQL*Plus 还支持脚本执行、数据导出导入、动态性能视图查询等功能。通过 SQL*Plus,用户还可以创建和修改表、索引、存储过程等数据库对象,进行用户管理和权限控制。 7. **...

    深度对比 Oracle与SQL Server

    Oracle 通过 SQL*Plus 命令或者 OSM(Oracle System Manager)来完成这些操作,而 SQL Server 则可以通过 SQL Server Management Studio 或命令行工具(如 sqlservr.exe)来实现。这些工具和命令提供了不同的启动和...

    sqlplus 11.2 安装包oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

    通过SQL*Plus,你可以执行脚本、创建报告、进行数据操作以及管理数据库对象,如表、视图、存储过程等。它提供了丰富的交互式环境和高级特性,如格式化输出、条件处理、批处理等。 2. **Oracle Instant Client**:这...

    oracle_client客户端免安装版本

    Oracle客户端包含了连接到Oracle数据库所需的各种组件,如网络协议栈、SQL*Plus、OCI(Oracle Call Interface)等,使得用户可以通过SQL查询、PL/SQL编程或者其他第三方开发工具来访问和管理数据库。 在Oracle...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...

    instantclient-jdbc-windows.x64-12.2.0.1.0.zip

    开发者需要在Java代码中导入对应的JDBC驱动类(如`oracle.jdbc.driver.OracleDriver`),并通过`Class.forName()`加载驱动,然后使用`java.sql.DriverManager.getConnection()`方法建立到数据库的连接。配置参数如...

    oracle的API

    5. SQL*Plus:这是一个命令行工具,可以直接执行SQL语句和PL/SQL块,也可以用于脚本执行和数据库管理。虽然不是API本身,但SQL*Plus经常被用来测试和调试Oracle API的实现。 6. UTL_FILE包:这个PL/SQL包提供了在...

Global site tag (gtag.js) - Google Analytics