FAQ for Oracle2Paradox Packages of type 4 JDBC Driver for Oracle to Corel Paradox
The most recent version of this document can be viewed at here.
Table of Contents
1. General Questions
2. EMBED Package Questions
 
General Questions
 
1. How to know the detailed version information of Oracle2Paradox package?
check that MANIFEST.MF file in jar file. 
 
2. Can I use it in an iSeries OS/400 IBM machine that has Java 1.4 running in it?
The Oracle2Paradox packages can run on any platform with Java VM, which includes Microsoft Windows, Novell Netware, OS2, UNIX, and LINUX. It supports Personal Java, JDK1.0.X, JDK1.1.X, JDK1.2.X, JDK1.3.X, JDK1.4.X and JDK1.5.X. It supports JDBC1.2, JDBC2.0, and JDBC3.0 now.
 
3. What is difference between the Oracle2Paradox Package, Embedded(WithDrv) Package, Embedded(WithoutDrv) Package
The Oracle2Paradox Package is a GUI application , and the Embedded package is a package which can load into Oracle database(Oracle8i or upper). If you're exporting data by GUI application or a configuration file, you should use the Oracle2Paradox Package . If you want to export data more quickly and more flexibly, you can use the Oracle2Paradox Embedded Package.
As the tips by the name, Embedded(WithDrv) Package contains the HXTT Paradox JDBC package, and Embedded(WithoutDrv) Package doesn't.
 
4. What's the difference between the professional Oracle2Paradox Package and the enterprise Oracle2Paradox Package?
The standard Oracle2Paradox Package can export table data to Corel Paradox from Oracle.
The enterprise Oracle2Paradox Package contains the function of standard Oracle2Paradox Package, besides, it can export data accord view or a dynamic query, and execute export operation from a configuration file saved by prior export operation, and loaded into Oracle(8i or upper) for build a procedure to export data.
 
5. What causes the 'No suitable driver' SQLException?
This error usually occurs during a call to DriverManager.getConnection(). The cause can be failing to load the appropriate JDBC driver before calling getConnection(), or specifying an invalid JDBC URL that isn't recognized by your JDBC driver. If you are exporting data by GUI application or a configuration file, you should check the Oracle JDBC package exists in the directory in your driver config, and check your JDBC url. If you are using Embedded(WithoutDrv) Package to export data in Oracle database, this error happens is because you haven't load the HXTT Paradox JDBC package in Oracle database.
 
6. What's the diffirence between the HXTT Paradox JDBC package contained in DataExp 2007 program and the standard HXTT Paradox JDBC package?
The HXTT Paradox JDBC package contained in DataExp 2007 program can only used in DataExp 2007 program and have some functional limit, so you cann't use it for other usage.
There are no other difference between the two package. They can accept the same jdbc url, and connect properties, and operate data, etc. 
 
7. Can export a table data to a non-exists table?
Yes. This package will auto create the destination table. In the GUI application, you can change the table structure when need creating the table.
 
8. I would like to export data from our application, instead of load it in Oracle database or GUI application. can  can do so?
Yeah. You can do so if you buy the Enterprise Oracle2Paradox product . Maybe you should pay the attention to the licence.

There is a class named com.hxtt.data.export.advance.Oracle2Paradox in the Embedded(WithDrv) Package and Embedded(WithoutDrv) Package contains a series method to export data. 
All methods will throws java.sql.SQLException.
  
/**export table data in Oracle database to Corel Paradox 7.x Table
 *@param schemaName assign the source data table's schema, null means that table is owned by current user
 *@param tableName assign the source table name
 *@param targetDirectory assign the destination directory, in general, you want to export table data to a file.But in fact, you can assign any legal jdbc url not contains the prefix part(jdbc:paradox:/), so, c:/tmp,  c:/tmp/xx.zip, ////192.168.10.2/sharedir, //domain.com:3099/c:/data all can assigned to this parameter,  more about this information, please see the document
 *@param targetTableName assign the destination table name which you want to exported to it
 *@param targetConnProps  assign the conntion properties, please split multi properties by ';' ,for example, username=abc;password=abc
 */
 public static void exportTableToParadox7(String schemaName, String tableName, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export table data to Corel Paradox 8.x Table*/
 public static void exportTableToParadox8(String schemaName, String tableName, String targetDirectory, String targetTableName, String targetConnProps) 
 
 /**export table data to Corel Paradox 9.x Table  */
 public static void exportTableToParadox9(String schemaName, String tableName, String targetDirectory, String targetTableName, String targetConnProps)  
 
 /**export table data to Corel Paradox 10.x Table */
 public static void exportTableToParadox10(String schemaName, String tableName, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export table data to Corel Paradox 11.x Table  */
 public static void exportTableToParadox11(String schemaName, String tableName, String targetDirectory, String targetTableName,String targetConnProps)
 
 /**export table data to Paradox 3 Table  */
 public static void exportTableToParadox3(String schemaName, String tableName, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export table data to Paradox 3.5 Table  */
 public static void exportTableToParadox3_5(String schemaName, String tableName, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export table data to Paradox 4.x Table */
 public static void exportTableToParadox4(String schemaName, String tableName, String targetDirectory,String targetTableName, String targetConnProps)
 
 /**export table data to Paradox 5.x Table */
 public static void exportTableToParadox5(String schemaName, String tableName, String targetDirectory,String targetTableName, String targetConnProps)
 
 
/**export SQL query result to Corel Paradox 7.x Table
 *@param querySql assign the SQL query sentence
 *@param targetDirectory assign the destination directory, in general, you want to export table data to a file, so this parameter name is  targetDirectory, but in fact, you can assign any legal jdbc url not contains the prefix part(jdbc:dbf:/), so, c:/tmp,  c:/tmp/xx.zip, ////192.168.10.2/sharedir all can assigned to this parameter, more about this information, please see the document
 *@param targetTableName     assign the destination table name which you want to exported to it
 *@param targetConnProps  assign the conntion properties for build destination database connectiion, please split multi properties by ';' ,for example, username=abc;password=abc
 */
 public static void exportQueryToParadox7(String querySQL, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export SQL query result to Corel Paradox 8.x Table*/
 public static void exportQueryToParadox9(String querySQL, String targetDirectory, String targetTableName, String targetConnProps) 
 
 /**export SQL query result to Corel Paradox 9.x Table  */
 public static void exportQueryToFoxpro8(String querySQL, String targetDirectory, String targetTableName, String targetConnProps)  
 
 /**export SQL query result to Corel Paradox 10.x Table */
 public static void exportQueryToParadox10(String querySQL, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export SQL query result to Corel Paradox 11.x Table  */
 public static void exportQueryToParadox11(String querySQL, String targetDirectory, String targetTableName,String targetConnProps)
 
 /**export SQL query result to Paradox 3 Table  */
 public static void exportQueryToParadox3(String querySQL, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export SQL query result to Paradox 3.5 Table  */
 public static void exportQueryToParadox3_5(String querySQL, String targetDirectory, String targetTableName, String targetConnProps)
 
 /**export SQL query result to Paradox 4.x Table */
 public static void exportQueryToParadox4(String querySQL, String targetDirectory,String targetTableName, String targetConnProps)
 
 /**export SQL query result to Paradox 5.x Table */
 public static void exportQueryToParadox5(String querySQL, String targetDirectory,String targetTableName, String targetConnProps)
 
 
 
com.hxtt.data.export.advance.OracleConnectionGetter.setConnection(yourConnection);
com.hxtt.data.export.advance.Oracle2Paradox.exportTableToParadox7(null,"ATABLE","c:/tmp","BTABLE",null);


Attention, affter exported one table, you must reset the connection to export another table for we will release the connection after complete a export operation.

com.hxtt.data.export.advance.OracleConnectionGetter.setConnection(yourConnection);
com.hxtt.data.export.advance.Oracle2Paradox.exportQueryToParadox7("select * from ATABLE A,BTABLE B WHERE A.ID=B.ID","c:/tmp","NEWTABLE",null);
 
 
Embed Package Questions
 
1. What's the Embed Package?
Embed Package is a jar file which can load into Oracle database and execute export operation by Oracle procedure, or can used in your java program to execute export operation.
The Embedded(WithDrv) Package contains the HXTT Paradox JDBC package, and Embedded(WithoutDrv) Package doesn't.
If you have bought the the HXTT Paradox JDBC package, you can use the Embedded(WithoutDrv) Package to execute export operation. or else, you should the Embedded(WithDrv) Package to execute export operation.
 
2. How do I load the Embed Package(With HXTT Paradox JDBC Driver) into Oracle Database and execute export operation in Oracle database?
You can do as follows.
In windows Command or Shell(Linux/Unix), run the follows command to load the embed package into Oracle database.
loadjava -resolve -synonym -verbose -user username/password@OracleSid EMBOracle2Paradox_WithDRV.jar

Then, you should create the follows procedure,
procedure exportTableToParadox8(
  sourceschemaname in varchar2,
  tableorviewname varchar2,
  targetdirectory in varchar2,
  targettablename in varchar2,
  targetconnprops in varchar2
)
as language java name 'com.hxtt.data.export.advance.Oracle2Paradox.exportTableToParadox8%(
    java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)';


Then, you can use the procedure exportTableToParadox8 to export table/view date to DBase4 table.
 
  3. How do I load the Embed Package(Without HXTT Paradox JDBC Driver) into Oracle Database and execute export operation in Oracle database?
  It's same as load the Embed Package(With HXTT Paradox JDBC Driver) into Oracle database.
But at first, you should load the HXTT Paradox JDBC Driver into Oracle database.
In windows Command or Shell(Linux/Unix), run the follows command to load the embed package into Oracle database.
loadjava -resolve -synonym -verbose -user username/password@OracleSid Paradox_JDBC20.jar

Attention, you should load the jdbc2.0 package to Oracle database for the inner JVM in Oracle database is JDK1.3, it only support JDBC to 2.0.
 
  4. When I load package to Oracle database, errors happen, it says,
   while dropping synonym com/hxtt/data/export/a/c ORA-01031: Privilege Not Enough
 

This is because the user you used to load the package haven't enough privilege.
Please run the follows SQL to grant the user correct privilege.

GRANT JAVASYSPRIV  TO username;
GRANT JAVAUSERPRIV TO username;
GRANT CREATE PUBLIC SYNONYM TO username;
GRANT DROP PUBLIC SYNONYM TO username;


Then retry load the package.

 
  5. When I load package to Oracle database, errors happen, it says, ORA-18008 cannot find OUTLN schema
  This error happens is because you removed the OUTLN schema, when create database, the OUTLN schema will be created and locked,
and then, you removed this schema for security or other reasons.

You should use the follows SQL to recreate this schema.

CREATE USER "OUTLN" IDENTIFIED BY "OUTLN"
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON USERS ACCOUNT LOCK ;
GRANT UNLIMITED TABLESPACE TO "OUTLN";
GRANT CONNECT TO "OUTLN";
ALTER USER "OUTLN" DEFAULT ROLE CONNECT;

 
  6. I loaded the package, created the procedure, and execute procedure exportTableToParadox8 successly, but the data havn't exported to the destination table
 

When execute export table data to a data file, oracle database need open the file and write data to it.
But by default, the user in oracle database have no right to do so.
Please execute the follows sentence to grant the user privilege.

dbms_java.grant_permission('YOURUSER','java.util.PropertyPermission','*','read,write');
attention, YOURUSER should be upper case unless you create a user with "yourusername" format.

If you want export data to remote machine, for example, your targetdirectory parameter like /192.168.20.16/shareDir or //domain.com:3099/c:/data, you should execute the follows sentence,too.

dbms_java.grant_permission('YOURUSER','java.net.SocketPermission','*','connect, resolve');

 
  7. I loaded the package, created the procedure, grant privilege, and execute procedure exportTableToDBase4 successly in machine, but I cann't find the data file in my machine
 

The data file will be located the Oracle Database Server machine.
For example, you execute the follows procedure,

BEGIN
  exportTableToParadox8(null,'atable','c:/tmp',null,null);
END;


This data of atable will export to the c:/tmp/atable located in the Oracle Databae Server machine no matter where you execute this procedure .

 
  8. How to export data accord a SQL query?
  For example,

BEGIN
  exportQueryToParadox8('select * from aa.atable a,bb.btable b where a.id=b.id','c:/tmp','XTABLE',null);
END;

 
  9. Errors happened when use the procedure to export data, but the Oracle database only tell me a simple java exception, how do I see the detail information and tell you for solve this question?
 

If you want the more detail exception information, you should execute this procedure in SQL/Plus, and do as follows.

SQLPLUS MYNAME/MYPASSWORD@MYDB
SET SERVEROUTPUT ON SIZE 20000
CALL DBMS_JAVA.SET_OUTPUT(20000); Then, execute the procedure.

EXECUTE exportQueryToParadox8('select * from aa.atable a,bb.btable b where a.id=b.id','c:/tmp','XTABLE',null);

If there are errors happened, you can see the detail information .

 
  10. Can i load two package to Oracle(8i or upper) database, for example, EMBOracle2DBF_WithDrv.jar and EMBDBF2Oracle_WithDrv.jar?

You cannot do so. If you have the request, please tell us, we will create a special package for you.

 

Copyright © 2006 Hongxin Technology & Trade Ltd. | All Rights Reserved. |