Notas de la version de Sun Java System Application Server Enterprise Edition 8.2

Exportación de tablas de Pointbase a Java DB

Este ejemplo muestra cómo capturar el DDL de una tabla en Pointbase y crear la misma tabla en Java DB mediante Netbeans 5.0. También puede utilizar la herramienta de comandos y el comando unload database:

./startcommander.sh
Do you wish to create a new Database. (Yes (Y) or No (N))? [default: N]: 
Enter product to connect with: (Embedded (E) or Server (S))? [default: E]: e
Enter driver to use? [default: [com.pointbase.jdbc.jdbcUniversalDriver]: 
Enter database URL? [default: [jdbc:pointbase:embedded:sample]: 
Enter Username? [default: PBPUBLIC]: 
Enter Password? [default: PBPUBLIC]: 

PointBase Commander 5.2 ECF build 294 size restricted version EMBEDDED

Interactive SQL command language. SunOS/5.9

(C) Copyright 2004 DataMirror Mobile Solutions, Inc. All rights reserved.

Licensed to: Sun_customer_demo_use
For commercial version contact PointBase at: 
pointbase.com
PHONE: 1-877-238-8798 (US & CANADA)
       1-408-961-1100 (International)
WEBSITE: www.pointbase.com

SQL>unload database sampledb.sql;
SQL> unload database sampledb.sql;
SQL> 13 Row(s) Unloaded. (PBPUBLIC.CUSTOMER_TBL)
SQL> 4 Row(s) Unloaded. (PBPUBLIC.DISCOUNT_CODE_TBL)
SQL> 30 Row(s) Unloaded. (PBPUBLIC.MANUFACTURE_TBL)
SQL> 11 Row(s) Unloaded. (PBPUBLIC.MICRO_MARKETS_TBL)
SQL> 9 Row(s) Unloaded. (PBPUBLIC.OFFICE_TBL)
SQL> 4 Row(s) Unloaded. (PBPUBLIC.OFFICE_TYPE_CODE_TBL)
SQL> 15 Row(s) Unloaded. (PBPUBLIC.ORDER_TBL)
SQL> 6 Row(s) Unloaded. (PBPUBLIC.PRODUCT_CODE_TBL)
SQL> 30 Row(s) Unloaded. (PBPUBLIC.PRODUCT_TBL)
SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_DATA_TBL)
SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_TBL)
SQL> 52 Row(s) Unloaded. (PBPUBLIC.SALES_TAX_CODE_TBL)
SQL> 12 Table(s) Unloaded.
SQL> quit;

Los resultados derivados de la ejecución de unload database se escriben en sampledb.sql, como se indica en el ejemplo anterior. El archivo sampledb.sql contiene todos los DDL necesarios para crear las tablas y los índices requeridos. También contiene el DML para insertar de nuevo los datos en la base de datos. El comando del programa de comandos RUN está diseñado para importar los datos en otra base de datos Pointbase mediante la secuencia de comandos generada. A continuación, se muestra un ejemplo de la apariencia que tienen las instrucciones INSERT y los datos asociados en el archivo generado:

INSERT INTO "ADVENTURE"."CATEGORY" (
"CATID", "LOCALE", "NAME", "DESCRIPTION", "IMAGEURI" )
VALUES( ?, ?, ?, ?, ? );
{
'ISLAND              ','en_US','Island Adventures','Experience an island /
paradise in a way fit for your needs.','Island_Adventures.gif'
'JUNGLE              ','en_US','Jungle Adventures','Experience a jungle /
paradise in a way fit for your needs.','Jungle_Adventures.gif'
'MOUNTAIN            ','en_US','Mountain Adventures','Experience an /
elevated paradise with a view.','Mountain_Adventures.gif'
'ORBITAL             ','en_US','Orbital Adventures','Experience a vacuum /
paradise with a beautiful view and where no one can hear you scream.', /
'Space_Adventures.gif'
'WESTERN             ','en_US','Western Adventures','Enjoy the Wild West. /
','Western_Adventures.gif'
'SOUTH_POLE          ','en_US','South Pole Adventures','Experience a /
frozen paradise in a way fit for your needs.','SouthPole_Adventures.gif'
};

Puede editar fácilmente el archivo generado a partir del comando unload database de tal forma que sólo esté compuesto por el DDL (por ejemplo, no sería tan complicado escribir un programa que procese las instrucciones insert). Como prueba, utilizamos el comando de anulación de la carga de la base de datos en la base de datos sample de Pointbase y, a continuación, editamos la secuencia de comandos generada, realizando los siguientes cambios:

A continuación, se utiliza una secuencia de comandos Ant sencilla para ejecutar el DDL mediante el destino sql . Por último, se repite el mismo experimento para la base de datos sun-appserv-samples , que requiere que se efectúen los siguientes cambios adicionales en el archivo SQL generado:

Para cambiar los procedimientos de Java de Pointbase para que funcionen con Java DB, es necesario realizar varios cambios en el código de Java, así como en las instrucciones CREATE PROCEDURE. Puede encontrar información sobre la creación de procedimientos de Java de Java DB en el manual de referencia de Derby. Se incluirá compatibilidad con el tipo de datos Boolean en la próxima versión de Java DB.