有兴趣的,可以加我QQ:245308557
package procedures;
import java.sql.*;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import oracle.jdbc.OracleCallableStatement;
import oracle.jdbc.OracleTypes;
import com.mysql.jdbc.*;
public class testProce {
public static void main(String[] args) {
getJDBC_Oracle();
}
public static void getJDBC_Oracle(){
/*
* Oracle 实例
* create or replace package gomepackage AS
TYPE sale_cur IS REF CURSOR;
end gomepackage;
create or replace procedure gome(rresult out gomepackage.sale_cur)
is
begin
open rresult for select * from person;
end gome;
create table person(fid int primary key,username varchar2(10),passwrod varchar2(20))
insert into person values (1,'pang','pang')
insert into person values(2,'li','li')
insert into person values (3,'zh','zh')
select * from person
*
*/
Connection conn = null;
ResultSet rs = null;
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String call = "{call gome(?)}";
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url,"pyl","pyl");
CallableStatement callst = conn.prepareCall(call);
callst.registerOutParameter(1, OracleTypes.CURSOR);
callst.execute();
//这两种方式 都可以
rs = (ResultSet) callst.getObject(1);
//rs = ((OracleCallableStatement)callst).getCursor(1);
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void getJDBC_MySql(){
/*Mysql实例
* delimiter //
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql" ,"root","123");
create table proce (id int,username varchar(20),password varchar(20))//
drop procedure if exists gome
create procedure gome(out rnum varchar(20))
begin
select username into rnum from proce where id =1;
end
*/
Connection conn = null;
Statement s =null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql" ,"root","123");
String call="{call gome(?)}"; //调用语句
CallableStatement proc=conn.prepareCall(call); //调用存储过程
// proc.setString(1,"12345678"); //给输入参数传值
proc.registerOutParameter(1,Types.VARCHAR ); //声明输出参数是什么类型的
proc.execute(); //执行
String address=proc.getString(1); //获得输出参数
p(address);
/* s = conn.createStatement();
rs = s.executeQuery(sql); */
//CallableStatement cs = conn.prepareCall(sql, 1, 2);
/* conn.setAutoCommit(false);
CallableStatement proc = conn.prepareCall("{ ? = call snuffed_it_when(?) }");
proc.registerOutParameter(1, Types.INTEGER);
proc.setString(2, poetName);
int age = proc.getInt(2);*/
/* while(rs.next()){
p(rs.getInt("fuserid")+" ----- ");
p(rs.getString("fusername")+" ----- ");
p(rs.getString("fpasswrod")+" ----- ");
p(rs.getString("fbirday")+" ----- ");
p(rs.getString("fzhuzhi")+" ----- ");
p(rs.getString(""));
p(rs.getString(""));
p("\n");
}*/
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}finally{
/* try {
rs.close();
s.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}*/
}
}
public static void p(String s){
System.out.print(s);
}
public static void p(int s){
System.out.print(s);
}
}
分享到:
相关推荐
MySQL和Oracle是两种广泛应用的关系型数据库管理系统(RDBMS),它们在不同的场景下都有各自的优点。MySQL以其开源、免费、高效的特点,常被用于中小型企业或互联网应用;而Oracle则以其强大的企业级功能和高性能,...
在IT领域,数据库是存储和管理数据的核心工具,而Java是一种广泛使用的编程语言,它能够通过特定的驱动程序与各种数据库进行交互。本主题聚焦于MySQL和Oracle这两大数据库系统,以及它们对应的Java驱动jar包。 ...
在本项目中,"基于python3.5+flask+mysql+oracle的一键生成系统完整demo" 提供了一个全面的示例,展示了如何利用Python 3.5版本、Flask框架,以及MySQL和Oracle数据库来构建一个自动化生成系统。这个系统能够自动...
本压缩包"mysql+sql+oracle数据库包"显然包含与这三个主流关系型数据库管理系统(RDBMS)相关的资源,特别是"jar包",这通常指的是Java档案文件,用在Java应用程序中连接到数据库的驱动程序。 首先,MySQL是一种...
这个SSM+MySQL+Oracle.jar包的整合意味着开发者可以快速创建一个具备完整数据访问层和业务逻辑层的Web应用,无论选择MySQL还是Oracle作为数据库,都可以直接使用此包进行开发。在实际应用中,开发者通常会配合IDE...
标题中的“JDBC数据库驱动程序包,Sql+mySql+oracle”揭示了这是一个包含不同数据库管理系统(DBMS)的Java数据库连接(JDBC)驱动的集合。JDBC是Java编程语言中用于与各种类型的数据库进行交互的一组接口和类。这个...
MySQL、Oracle和SQL Server是三款非常流行的数据库管理系统(DBMS),广泛应用于各种规模的企业和项目。本文将深入探讨这三大数据库系统及其驱动包的相关知识点。 首先,MySQL是一款开源、免费的关系型数据库管理...
然后,安装并配置MySQL数据库,创建所需的数据库和表结构。Navicat可以用来方便地管理这个数据库,进行数据操作和查询。 在开发过程中,Java程序员会编写Servlet和JSP文件来处理HTTP请求和响应,这些文件会被部署到...
### MySQL Oracle 数据库开发设计及使用规范 #### 设计规范 **1. 数据设计原则** - **遵循3NF规范:** - 表中的每个值只能出现一次。 - 每一行都应通过唯一的键来标识。 - 表内不应包含依赖于其他键的非键信息...
"Oracle|Sqlserver|MySql数据库表结构一键生成工具" 提供了一种高效的方法来自动化这个过程,大大减轻了手动编写文档的工作量。这款工具能够支持三种主流的关系型数据库管理系统:Oracle、SQL Server和MySQL。 ...
SpringBoot简化了Spring应用的初始搭建以及开发过程,而MyBatis则是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。当这两个框架与Oracle数据库整合时,可以构建出高效、稳定的后台服务。 在...
1. 表结构定义:同样创建`province_city_county`表,但Oracle可能使用NUMBER类型代替INT,NVARCHAR2代替VARCHAR存储字符数据。 2. 序列和主键:Oracle常用序列生成主键值,例如创建一个名为`prov_city_cnty_seq`的...
2. 表结构迁移:工具需要能够分析源数据库的表结构,包括字段名、数据类型、主键、外键、索引等,并在目标数据库中创建相应的结构。 3. 数据迁移:工具应支持大量数据的高效迁移,可能采用全量迁移或增量迁移的方式...
在这个项目中,MySQL的数据会被读取并转换,然后存储到Oracle数据库中。Oracle则是一款企业级的高性能数据库,通常用于处理大规模、复杂的数据,其特性包括强大的事务处理能力、丰富的数据类型以及高度的可用性和可...
它包括四大主要部分:数据定义语言(DDL)用于创建和修改数据库结构,如表、视图;数据操纵语言(DML)用于处理数据,如SELECT、INSERT、UPDATE、DELETE语句;数据控制语言(DCL)用于设置权限和访问控制;事务处理...
在IT行业中,数据库是数据管理和存储的核心,而MySQL和Oracle是两种广泛应用的关系型数据库管理系统(RDBMS)。本文将深入探讨这两个数据库系统及其在实际应用中的相关知识点。 MySQL是一款开源、免费的SQL数据库,...
MySQL到Oracle转换是一个常见的任务,特别是在企业级应用迁移或整合过程中。这个工具专注于将MySQL的数据库结构和数据转换为Oracle数据库兼容的格式。下面将详细解释这个过程涉及的知识点。 1. **SQL语言的差异**:...
MySQL 和 Oracle 是两种广泛使用的数据库管理系统(DBMS),它们在数据存储、管理和处理方面具有各自的特点和优势。这里,我们主要探讨的是它们的函数用法,通过提供的文档资源——"MySQL_5.1_zh.chm" 和 "oracle...
### Oracle+MySQL+jdbc数据库教程知识点详解 #### 一、Oracle和MySQL基础知识 **1. 数据库基本概念** - **数据库定义**:一种用于存储、管理和检索数据的系统。 - **关系型数据库**:采用表格形式组织数据,通过行...