关于0racle中pl/sql调用java的实际应用(附代码)
来源:互联网 发布:淘宝我打软件 编辑:程序博客网 时间:2024/04/28 03:25
为了解决ORACLE服务器端与客户端字符集合不同,所引起的汉字无法识别的情况.第一,创建orcale中的java对象. 命令: create or replace and compile java source named "TransMetaData" as /* java code */ 注意:1.不用写包名. 2.方法必须是static的 3.如果方法需要参数,则需要在第二步,创建带参数的存储过程. 如果方法需要返回值,则需要在第二步,创建带返回值的存储过程. 例如: create or replace and compile java source named "TransMetaData" as import java.io.*; import java.sql.*; import java.util.Properties; import oracle.jdbc.driver.OracleDriver; public class TransMetaData { /** * @param args * @throws SQLException * @throws UnsupportedEncodingException */ public static void donow(String str) throws FileNotFoundException, IOException,SQLException, UnsupportedEncodingException { str = "_"+str; Properties props = new Properties(); props.load(new FileInputStream("c:/tables.properties")); String DATABAST_SOURCE_URL = props.getProperty("DATABAST_SOURCE_URL"+str); String DATABAST_SOURCE_USERNAME = props.getProperty("DATABAST_SOURCE_USERNAME"+str); String DATABAST_SOURCE_PASSWORD = props.getProperty("DATABAST_SOURCE_PASSWORD"+str); String DATABAST_TARGET_URL = props.getProperty("DATABAST_TARGET_URL"+str); String DATABAST_TARGET_USERNAME = props.getProperty("DATABAST_TARGET_USERNAME"+str); String DATABAST_TARGET_PASSWORD = props.getProperty("DATABAST_TARGET_PASSWORD"+str); String SQL_SOURCE_TABLENAME = props.getProperty("SQL_SOURCE_TABLENAME"+str); String SQL_TARGET_TABLENAME = props.getProperty("SQL_TARGET_TABLENAME"+str); String SQL_TABLE_FIELD = props.getProperty("SQL_TABLE_FIELD"+str); Connection conn = null; Connection conn_to = null; DriverManager.registerDriver(new OracleDriver()); conn = DriverManager.getConnection(DATABAST_SOURCE_URL,DATABAST_SOURCE_USERNAME,DATABAST_SOURCE_PASSWORD); conn_to = DriverManager.getConnection(DATABAST_TARGET_URL,DATABAST_TARGET_USERNAME,DATABAST_TARGET_PASSWORD); if (!conn.isClosed()&&!conn_to.isClosed()){ System.out.println("**源与目的数据库连接成功**"); conn.setAutoCommit(false); conn_to.setAutoCommit(false); }else{ new Exception("源与目的数据库连接不成功,请检查!"); } PreparedStatement pstmt = conn.prepareStatement("SELECT "+SQL_TABLE_FIELD+" FROM "+SQL_SOURCE_TABLENAME); ResultSet rs = pstmt.executeQuery(); ResultSetMetaData rsmd = rs.getMetaData(); int numberOfColumns = rsmd.getColumnCount(); //numberOfColumns代表源表列的数量 String[] data = new String[numberOfColumns]; String mark = ""; String temp; PreparedStatement pstmt2 = conn_to.prepareStatement("delete from "+SQL_TARGET_TABLENAME); pstmt2.executeUpdate(); pstmt2.close(); while(rs.next()){ mark = ""; for(int i=0;i 角色 说明 1 AQ-ADMINISTRATOR-ROLE 队列管理员角色 2 AQ-USER-ROLE 队列用户角色 3 CONNECT 连接 4 CTXAPP 应用 5 DBA 数据库管理员 6 DELETE-CATALOG-ROLE 删除目录角色 7 EXECUTE-CATALOG-ROLE 执行目录角色 8 EXP-FULL-DATABASE 扩展整个数据库 9 GLOBAL_AQ_USER_ROLE 全局队列用户角色 10 HS-ADMIN-ROLE HS管理角色 11 IMP-FULL-DATABASE IMP全局数据库 12 JAVADEBUGPRIV JAVA调试权限 13 JAVAIDPRIV JAVA ID权限 14 JAVASYSPRIV JAVA系统权限 15 JAVAUSERPRIV JAVA用户权限 16 JAVA-ADMIN JAVA管理员 17 JAVA-DEPLOY JAVA调度 18 OEM-MONITOR OEM遥控器 19 OLAP_DBA 联机分析数据库管理员 20 RECORVERY-CATALOG-OWNER 恢复目录所有者 21 RESOURCE 资源 22 SELECT-CATALOG-ROLE 选择目录角色 23 WKADMIN WK管理员 24 WKUSER WK用户 25 WM_ADMIN_ROLE WK管理员角色 //-------------------------------附上一个自己写的简单的例子--------------------------------------- 第一步: create or replace JAVA SOURCE Named Js_Rand AS import java.util.Date; public class showDate { public static Date showNowDate(){ return new java.util.Date(); } } / 第二步. CREATE OR REPLACE function rand return VARCHAR2 AS language Java Name 'showDate.showNowDate() return Date'; / 第三步: begin dbms_output.put_line(rand); End; / 多谢指导
- 关于0racle中pl/sql调用java的实际应用(附代码)
- 关于pl/sql调用java的学习总结(附代码)
- PL/SQL 调用JAVA 代码
- 在java中调用pl/sql编写的存储过程
- 在PL/SQL中调用Java方法
- 关于PL\SQL应用的碎记
- PHP中关于队列的实际应用
- PL/SQL中Ref Cursor的应用
- pl/sql 有返回值的存储过程 以及代码中调用存储过程 实例
- JAVA中设计模式的实际应用
- Java中枚举Enum的实际应用
- 关于oracle中PL/SQL语句,即存储过程的写法和调用。
- 关于在PL/SQL代码中提交请求
- 关于在PL/SQL代码中提交请求
- 关于java异常在实际应用中经验与总结
- Java调用C#的WebService实例三(实际应用)
- Java调用Webservice(asmx)的例子(实际应用)
- 在PL/SQL中借助JAVA调用可执行程序的例子
- ORACLE中LOB字段的使用和维护
- 常用 seo
- new
- Linux中.a,.la,.o,.so文件的意义和编程实现
- Oracle中的包――DBMS_LOB(一)
- 关于0racle中pl/sql调用java的实际应用(附代码)
- Javascript关键字(Reserved Words) 保留字
- 三个精灵说真话假话的判断难题
- (树状数组) poj 2352 Stars
- 网络问题
- 关于list的indexOf与equals的联系
- JavaScript 框架比较
- 自定义你的Maya Node的icon!!
- 简单