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:
- Sección de DECLARACION
- Sección de PARAMETROS de línea de comando
- 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),