En esta oportunidad mostrare el manejo de una herramienta muy útil, al momento de trabajar con procesos automáticos SQLLOADER:
SQLLOADER es una herramienta que te permite acceder a una conexión a BD ORACLE y a la vez cargar datos desde un Fichero de forma masiva en base a un archivo de configuración.
Los pasos son los siguientes para el desarrollo del DUMMY:
I. PASO #1:
Crearemos una tabla donde se cargarán los datos en base a la ejecución del SQLLOADER. La tabla la llamaremos: TB_USUARIO.
CONTENIDO:
CREATE TABLE TB_USUARIO(
ID NUMBER NOT NULL,
NOMBRES VARCHAR2(30) NULL,
APELLIDOS VARCHAR2(30) NULL,
DISTRITO VARCHAR2(30) NULL,
CUMPLEANOS DATE NULL
);
ALTER TABLE TB_USUARIO
ADD CONSTRAINT PK_TB_USUARIO PRIMARY KEY( ID );
II. PASO #2:
Acceder al servidor desde consola vía un Telnet:
Telnet SERVER_IP
- User: XXX
- Password: XXX
III. PASO #3:
Crea un fichero (Shell) llamado: TB_USUARIO_EJECUCION.sh, que servirá para la ejecución del proceso de carga.
Verificar que las variables de entorno estén seteadas, sino como por ejemplo la del $TNS_ADMIN se solicitara desde consola el seteo del PASSWORD.
CONTENIDO:
#!/bin/ksh
# CONEXION A ORACLE FROM SHELL #
banner 'SQLLOAD'
echo $CLASSPATH
echo $ORACLE_HOME
echo $TNS_ADMIN
echo '--------- ANTES EJECUCION ---------'
## ORACLE_USER@ORACLE_INSTANCIA
## PARA QUE RECONOZCA LA UBICACIÓN DE LOS FICHEROS => [ ./ ]
sqlldr RGUERRA@xe control=./TB_USUARIO_CONFIGURACION.ctl data=./TB_USUARIO_DATA.txt
echo '-------- DESPUES EJECUCION --------'
IV. PASO #4:
Crear un fichero (.ctl) llamado: TB_USUARIO_CONFIGURACION.ctl, donde se configurará la tabla de la BD, sus campos, los tipos y los limitantes entre campo y campo.
CONTENIDO:
LOAD DATA
APPEND INTO TABLE TB_USUARIO
(
ID INTEGER EXTERNAL TERMINATED BY "~",
NOMBRES CHAR TERMINATED BY "~" ENCLOSED BY '"',
APELLIDOS CHAR TERMINATED BY "~" ENCLOSED BY '"',
DISTRITO CHAR TERMINATED BY "~" ENCLOSED BY '"',
CUMPLEANOS DATE "DD-MM-YYYY"
)
V. PASO #5:
Simular el fichero que será dejado por otro aplicativo para la carga masiva. En este caso al fichero le llamaremos: TB_USUARIO_DATA.txt
CONTENIDO:
001~"CESAR RICARDO"~"GUERRA ARNAIZ"~"LOS OLIVOS"~04/09/1980 01:43:11 AM
002~"JUAN JOSE"~"VERA PALOMINO"~"BARRANCO"~03/12/1972 01:43:11 AM
003~"CARLOS ALONZO"~"MONZON PEREZ"~"LIMA"~09/09/1983 01:43:11 AM
004~"DILVER MAURICIO"~"CUSCANO RAIMOND"~"LA MOLINA"~02/09/1981 01:43:11 AM
005~"CARLA GUIANELA"~"ROMAN URBINA"~"CALLA"~07/10/1975 01:43:11 AM
VI. PASO #6:
Antes y después de cada ejecución de la SHELL es necesario que se limpie la tabla para ver el efecto de cada:
LIMPIO TABLA:
TRUNCATE TABLE TB_USUARIO;
MUESTRO TABLA:
SELECT * FROM TB_USUARIO;
EJECUCION:
Desde el directorio de ubicación de los ficheros respectivos brindar los permisos de ejecución respectivos: chmod 777 *.sh, luego ejecutar la SHELL:
sh TB_USUARIO_EJECUCION.sh
Para un mayor detalle de los comando utilizados, descargar el TUTORIAL pulsando Aquí
No hay comentarios:
Publicar un comentario