`

mysql + oracle 存储过程 及相应数据库表的创建

阅读更多

有兴趣的,可以加我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工具

    Convert Mysql to Oracle ...不能转换MYSQL的存储过程 Convert Mysql to Oracle 运行需求 有相应的数据库操作权限 在机器中安装了ORACLE客户端,使得Convert Mysql to Oracle能够成功连接到ORACLE

    oracle Mysql相互转化的工具

    oracle Mysql相互转化的工具

    SqlServer,Oracle,MySql数据库结构相互对比同步

    两个版本的数据库对比,同时支持sqlserver,oracle,MySql ,代码差异高亮显示 具体功能 介绍博客有图片 :https://blog.csdn.net/wwja_chen/article/details/89336728 如开发库和正式库之间的结构和数据同步,此工具可以...

    DBHelper数据库操作类(支持OleDb、MySQL、Oracle、SQL、SQLite).zip

    数据库操作类(支持OleDb、MySQL、Oracle、SQL、SQLite、) 操作: 获取连接字符串 得到web.config里配置项的数据库连接字符串。 数据库连接字符串(web.config来配置),可以动态更改connectionString支持多数据库. ...

    ORACLE存储过程实例

    ORACLE数据库存储过程和mysql数据库存储过程实例,以及存储过程的优化。

    【数据库作业14】第五章: 数据库完整性 习题 + 存储过程

    他这个语句好像也不是标准SQL,应该是MYSQL还是Oracle吧。希望老师解答~ (1)统计离散数学成绩分布 CREATE TABLE SCC( Grades CHAR(5), Num INT ) --存人数 INSERT INTO SCC(Grades,Num) VALUES('>90...

    记一次oracle通过dblink连接mysql实施

    本周由于公司一个系统的oracle数据库需要采集另一个系统mysql数据库的数据,于是对oracle通过dblink连接mysql进行了研究,测试环境是单实例oracle 10g 64位,折腾了半天搞定了,但是生产环境是10g rac,原本以为会很...

    Oracle Mysql DM等数据库统计表数据量和条数.docx

    通过调用数据库内置表,视图,函数,存储过程及自定义函数等实现达梦,mysql和oracle数据库表的数据量和数据条数的统计

    MySQL VS ORACLE.pdf

    mysql和oracle这两个不同数据库的区别,从底层到数据使用的实际环境应用上加以区分,帮助用户选择合适的存储方式

    MySQL数据库:MySQL存储引擎.pptx

    数据库和表的创建和管理;;存储引擎就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎简而言之就是指表的类型。...

    保存图片到数据库 delphi

    保存图片到数据库 代码中含oracle 和SQL server的对应插入方式

    oracle和mysql的区别

    在ORACLE(db2也一样)中表空间是文件系统中的物理容器的逻辑表示,视图、触发器和存储过程也可以保存在表空间中。而MYSQL并没有使用表空间来进行管理。 2.查询当前所有的表。ORACLE: select * from tab,MYSQL:...

    oracle中的BLOB(照片)转换到mysql中

    从oracle中的BLOB类型字段中取出照片,转存到mysql数据库中。思路是现将oracle中的照片存储在本地文件夹,在将本地图片上传到mysql中。

    mysql数据库详解.pdf

    1、什么是数据库? 数据库:database,是存储数据的仓库。 数据库:高效的存储和处理数据的...关系型数据库:安全(保存磁盘基本不可能丢失),容易理解,比较浪费空间(二维表) 非关系型数据库:效率高,不够安全。

    数据库比对工具,支持mysql、sqlserver、oracle(win 32版)

    本工具用于对比SQL数据库支持mysql、sqlserver、oracle,以源数据库为标准 数据库, 然后拿目标数据库与标准数据库比较,如果目标数 据库少 了表,或少了字段,或字段类型长度不一样,或索引 不一样, 或存储过程,...

    a5m2数据库工具

    支持多个数据库连接:oracle,db2,sqlserver,mysql,操作简单

    《MySQL数据库入门》教学设计.docx

    教学目标及基本要求 1、了解数据库的基础知识,可以描述数据库的存储结构和常见的数据库产品 2、了解MySQL的安装与配置,学会在Window和Linux平台安装MySQL 3、掌握MySQL的启动、登录以及配置方式 重点及措施 1、...

    基于某某平台的数据源迁移oracle -mysql

    基于某某系统平台的数据源迁移 1 一、背景 4 二、环境准备 4 1、软件 4 2、jar包 4 ...七、某某系统中调用 mysql存储过程 11 1、调用存储过程配置 11 2、存储过程中遇到的问题 13 八、后续迁移方案 17

    这是一个简单的学生管理系统网站,基于前端+flask框架+mysql数据库.zip

    MySQL 是一款广受欢迎的开源关系型数据库管理系统(RDBMS),由瑞典MySQL AB公司开发,现隶属于美国甲骨文公司(Oracle)。自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用...

    mysql数据库索引自学笔记,基础+单表索引+多表索引的创建方法及原理

    单表的索引数不要超过6个:这个是数据库软件的限制,在早期oracle数据库上会有此限制,但mysql等就不会存在这个限制。但读者也要清楚的知道,索引数据过多会影响写的性能; 不应该索引不稳定的列:一般认为更新速度...

Global site tag (gtag.js) - Google Analytics