SQL*Loader – (Parte 2): El Fichero de Control

El Fichero de Control

Es el que especifica de qué forma serán cargados los datos y en que tablas y columnas serán recibidas esos datos.

Contenido:

  • Localización y nombre del archivo de datos de entrada.
  • Formato de los registros en el fichero de datos.
  • El nombre de las tablas o tablas donde será cargada la información.
  • Definición de un criterio con el cual los datos de un fichero de entrada serán cargados en las tablas destino.
  • Localización y nombre de archivos ”erróneos” y “descartados” (discard y bad files).

El archivo está dividido en tres secciones:

  1. Sección de DECLARACION
  2. Sección de PARAMETROS de línea de comando
  3. Sección de DATOS

Sintaxis:

  • Formato libre (puede haber varios espacios en blanco, salto de línea, tabulaciones se consideran espacios)
  • Case Sensitive (nombre de tablas, archivos, columnas de la BD.)
  • Palabras reservadas para Sql*Loader: APPEND, BADFILE, BEGINDATA

Si utilizamos alguna de estas palabras, deben estar entre comillas simples o dobles.

  • Se puede colocar comentarios de la siguiente forma: –COMENTARIO aunque no se aceptan comentarios en la sección de datos.

Sql*Loader

OPTIONS (DIRECT=TRUE) → Formato de carga Directa

Otros parámetros a utilizar al especificar las tablas:

  • REENABLE/DISABLED_CONTRAINTS
  • RECOVERABLE/UNRECOVERABLE Permute Grabar en Redo.log
  • OPTIONS (DIRECT=TRUE) Especifica que la carga se hará mediante ruta directa.

Into table emp

INSERT/APPEND/REPLACE/TRUNCATE (puede declararse antes de especificar la tabla (de forma global para todas las tablas a cargar) o después (local para una tabla especifica)

Sql*Loader

LOS DATOS.

Validación:

Esta herramienta nos asegura que solamente cargara en nuestra Base de Datos datos correctos, es imposible que un campo Number sea cargado en un campo DATE o a la inversa, los registros que no tengan la conversión adecuada serán escritos en un archivo erróneo (Bad Files) También se nos permite mediante la cláusula WHEN realizar una selección de los datos a cargar, si algún registro no cumpliera la condición impuesta este será escrito en un archivo descartado

(discard files)

Tipos de Datos:

Datos soportados y comúnmente usados por Sql*loader:

        • CHAR                                                             → COLUMNAS CHAR/VARCHAR2
        • DATE                                                              → COLUMNAS DATE
        • INTEGER EXTERNAL, DECIMAL EXTERNAL,   → NUMERICOS
        • SMALLINT                                                      → int en C
        • FLOAT
        • DOUBLE

Longitud fija:

Cuando todos los registros de un fichero de datos tienen la misma longitud en bytes, y la posición de los campos no varían de un registro a otro, se dice que son datos de longitud fija.

Pueden especificarse de la siguiente forma:

  • Inicio y finalización de la posición – Nombre POSITION(4:47) CHAR,
  • Posición inicial y longitud – Nombre POSITION(4) CHAR(44),
  • Tipo de campo y longitud. -Nombre CHAR (44),

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *