Java 中调用oracle 的过程

oracle|过程

example 1:
/*
* This sample shows how to call a PL/SQL stored procedure using the SQL92
* syntax. See also the other sample PLSQL.java.
*/

import java.sql.*;
import java.io.*;

class PLSQLExample
{
public static void main (String args [])
throws SQLException, IOException
{
// Load the driver
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

String url = "jdbc:oracle:oci8:@";
try {
String url1 = System.getProperty("JDBC_URL");
if (url1 != null)
url = url1;
} catch (Exception e) {
// If there is any security exception, ignore it
// and use the default
}

// Connect to the database
Connection conn =
DriverManager.getConnection (url, "scott", "tiger");

// Create a statement
Statement stmt = conn.createStatement ();

// Create the stored function
stmt.execute ("create or replace function RAISESAL (name CHAR, raise NUMBER) return NUMBER is begin return raise + 100000; end;");

// Close the statement
stmt.close();

// Prepare to call the stored procedure RAISESAL.
// This sample uses the SQL92 syntax
CallableStatement cstmt = conn.prepareCall ("{? = call RAISESAL (?, ?)}");

// Declare that the first ? is a return value of type Int
cstmt.registerOutParameter (1, Types.INTEGER);

// We want to raise LESLIE's salary by 20,000
cstmt.setString (2, "LESLIE"); // The name argument is the second ?
cstmt.setInt (3, 20000); // The raise argument is the third ?

// Do the raise
cstmt.execute ();

// Get the new salary back
int new_salary = cstmt.getInt (1);

System.out.println ("The new salary is: " + new_salary);

// Close the statement
cstmt.close();

// Close the connection
conn.close();
}
}

example 2:

/*
* Created on 2004-10-12
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/

/**
* @author Jackey
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
/*
* This sample can be used to check the JDBC installation.
* Just run it and provide the connect information. It will select
* "Hello World" from the database.
*/

// You need to import the java.sql package to use JDBC
import java.sql.*;

// We import java.io to be able to read from the command line

import java.io.*;

import oracle.jdbc.OracleTypes;

class JdbcCheckup
{
public static void main(String args[])
throws SQLException, IOException
{
// Load the Oracle JDBC driver
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

// Prompt the user for connect information
System.out.println("Please enter information to test connection to the database");
String user;
String password;
String database;

user = readEntry("user: ");
int slash_index = user.indexOf('/');
if (slash_index != -1)
{
password = user.substring(slash_index + 1);
user = user.substring(0, slash_index);
}
else
password = readEntry("password: ");
database = readEntry("database(a TNSNAME entry): ");

System.out.print("Connecting to the database...");
System.out.flush();

System.out.println("Connecting...");
Connection conn = DriverManager.getConnection
("jdbc:oracle:oci8:@" + database, user, password);
System.out.println("connected.");

// Create a statement
Statement stmt = conn.createStatement();

// Do the SQL "Hello World" thing
ResultSet rset = stmt.executeQuery("select 'Hello World' from dual");

while (rset.next())
System.out.println(rset.getString(1));
// close the result set, the statement and connect
rset.close();
stmt.close();

System.out.println("Your JDBC installation is correct.");
//

CallableStatement call = conn.prepareCall("{call Emp_dept_data.Open_cv(?,?)}");
// Find out all the SALES person
// call.registerOutParameter (1, OracleTypes.CURSOR);
call.registerOutParameter (1 , OracleTypes.CURSOR);
call.setInt(2, 1);
call.execute ();
ResultSet rs = (ResultSet)call.getObject (1);

// Dump the cursor
while (rs.next ())
System.out.println (rs.getString (1)+"\t"+ rs.getString(2)+"\t"+ rs.getString(3));

rs.close();
call.close();

conn.close();
}

// Utility function to read a line from standard input
static String readEntry(String prompt)
{
try
{
StringBuffer buffer = new StringBuffer();
System.out.print(prompt);
System.out.flush();
int c = System.in.read();
while (c != '\n' && c != -1)
{
buffer.append((char)c);
c = System.in.read();
}
return buffer.toString().trim();
}
catch(IOException e)
{
return "";
}
}
}

时间: 2024-11-01 15:25:08

Java 中调用oracle 的过程的相关文章

如何在Delphi中调用oracle的存储过程返回数据集

oracle|存储过程|数据 选自CSDN http://search.csdn.net/Expert/topic/2280/2280860.xml?temp=2.169436E-02 论坛中JCC0128 网友的发言 [delphi+oracle报表解决方案(一)]delphi中调用oracle的存储过程(分带返回游标,不返回值两种)  关键字: delphi ,oracle存储过程,游标,返回数据集,报表 注:delphi 6+ oracle 8.1.6 一.创建包与包体 1.附:建表aac

java代码调用oracle存储过程

原文:java代码调用oracle存储过程 一.简介 与调用mysql存储过程类型过程都是如下 1.创建连接 Connection conn = DriverManager.getConnection(url, user, password); 2.创建CallableStatement CallableStatement statement = conn.prepareCall(sql); 3.设置参数 statement.setInt(1, id); statement.registerOu

Java中调用外部命令

Java中调用外部命令 public class ExecCommond{ public ExecCommond(){} /** * 执行一条命令 * @param execStr String 命令字符串 * @return String 执行命令错误时的信息. */ public static String exec(String execStr) { Runtime runtime = Runtime.getRuntime(); 取得当前运行期对象 String outInfo="&quo

VFP中调用Oracle的存储过程

VFP由于其通俗.易用,深受广大开发人员的欢迎,但其安全性与稳定性却不十分完善.而Oracle在此方面的优点是有口皆碑的,两者结合,能开发出高效.安全和稳定的应用系统.有关在VFP中调用Oracle存储过程方法的资料较少,下面就此举一简单例子,希望起到抛砖引玉的作用. 此方法适用于用VFP作前端开发工具.Oracle作后端数据库的C/S开发方法. 在Oracle端,建有如下表和存储过程: 表gzb如下: SQL〉select * from gzb; ID GZ 1 3050 3 2500 2 4

mongodb java-怎样在java中调用Mongodb内嵌文档中的值?

问题描述 怎样在java中调用Mongodb内嵌文档中的值? 大概的数据结构如下所示,可以使用mongodb的命令 db.first.find( {"EventParameter.TotalSeconds":3} )查询TotalSeconds为某一个数值,比如3数据,但是在java中怎么获取到所有的数值呢?如下面一行代码中get函数中的参数应该怎么写才能获取所有的时间? float seconds=Float.parseFloat(record.get("TotalSeco

pdf-求大神 帮我看看问题 Java中 调用虚拟打印机 把word转存为PDF

问题描述 求大神 帮我看看问题 Java中 调用虚拟打印机 把word转存为PDF public class SaveWordAspdf { public static void saveWordAspdf(String filePath, String outFile) throws Exception { ComThread.InitSTA(); ActiveXComponent actcom = new ActiveXComponent("Word.Application");

《Android的设计与实现:卷I》——第2章2.4 在Java中调用JNI实现方法

2.4 在Java中调用JNI实现方法 本节介绍如何在Java中调用JNI实现方法.JNI数据类型转换.JNI方法命名规则,以及JNI方法签名规则. 2.4.1 Java数据类型与JNI数据类型转换 Java中调用Native方法传递的参数是Java类型的,这些参数需要经过Dalvik虚拟机转化为JNI类型才能被JNI层识别.下面分基本类型和引用类型介绍这种转化关系. 1.基本类型转化关系 表2-1列出了基本类型的转化关系. 2.引用类型转化关系 JNI的引用类型定义了九种数组类型,以及jobj

java中调用delphi能否实现

问题描述 我现在做一个手机短信平台的开发,服务器端用java写好,现在用delphi写一个客户端,后两个连在一起能否实现在java中调用delphi的代码,请高手指点一下,谢谢 解决方案 解决方案二:搞反了吧,是delphi调用java吧,服务器开webservice就可以了,delphi里用wsdl导入器......解决方案三:都可以,相互调用解决方案四:用什么技术相关于,具体一点是怎么实现的,还往详细的说明....谢谢.....解决方案五:具体一点,怎么调,希望高手指点一二,是把delphi

Oracle 有导出 CSV 文件的功能,java可以调用Oracle的这个功能吗?

问题描述 大家好,请问Oracle有导出CSV文件的功能,java可以调用Oracle的这个功能吗?如果有如何做?谢谢您的回答,(俺是萝卜) 解决方案 解决方案二:应该要自己写方法的吧,再导出为csv文件.我猜的.呵呵解决方案三:不知道是不是能调用但是我觉得有调用它的那个工夫,自己都写了一个导出CSV的模块了