Está en la página 1de 4

Lección 05: Tablas Externas Talleres Oracle

TABLAS EXTERNAS
Las tablas externas es una funcionalidad, que proporciona Oracle, para
facilitar la lectura de ficheros formateados, como si fueran tablas.
Este tipo de tablas son de sólo lectura y no permite utilizar
manipulación de datos (DML). No admite la creación de índices sobre este
tipo de tablas.
Las tablas externas se utilizan en cargas de ficheros repetitivos y sin
tener que acceder al sistema operativo, para realizar la carga.

Acciones previas:
Cree usuario RH con tablespace por defecto TBS_RH. Asígnele rol “dba”
y conéctese.

CREATE TABLESPACE TBS_RH


DATAFILE '/u02/datos/df_rh.dbf' size 10M;

CREATE USER RH IDENTIFIED BY 123


DEFAULT TABLESPACE TBS_RH;

GRANT DBA TO RH;


-------------------------------------------------------------
-- 1. CREANDO DIRECTORIO DONDE SE UBICARA EL ARCHIVO
-------------------------------------------------------------
$ mkdir /u02/txt

CREATE OR REPLACE DIRECTORY DIR_TXT AS '/u02/txt';

SELECT * FROM DBA_DIRECTORIES;

WWW.TALLERESORACLE.COM Versión : 2023 - 06


Lección 05: Tablas Externas Talleres Oracle

-------------------------------------------------------------
-- 2. GENERANDO ARCHIVO DE TEXTO EN /u02/txt/ empleados1.txt
-------------------------------------------------------------
-- Abriendo el editor del archivo de texto

-- Insertando el texto, luego salir grabando

Tener en cuenta:
Nombre de archivo: empleados1.txt
Separador de datos: ,

--------------------------------------------------
-- 3. CREACION DE TABLA EXTERNA - IMPORTACION
--------------------------------------------------
CREATE TABLE EMPLEADOS_EXT
( ID NUMBER(15),
PATERNO VARCHAR2(50),
MATERNO VARCHAR2(50),
NOMBRE VARCHAR2(50),
CTABANCO VARCHAR2(50),
BASICO NUMBER(15)
)
ORGANIZATION EXTERNAL
(
DEFAULT DIRECTORY DIR_TXT
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
FIELDS TERMINATED BY ','
)
LOCATION ( 'empleados1.txt' ))
REJECT LIMIT UNLIMITED;

WWW.TALLERESORACLE.COM Versión : 2023 - 06


Lección 05: Tablas Externas Talleres Oracle

--------------------------------------------------
-- 4. CONSULTA DE TABLAS EXTERNAS
--------------------------------------------------
SELECT * FROM EMPLEADOS_EXT;

SELECT * FROM EMPLEADOS_EXT


WHERE BASICO > 3000;

--------------------------------------------------
-- 5. LISTA DE TABLAS EXTERNAS
--------------------------------------------------
SELECT * FROM DBA_EXTERNAL_TABLES;

--------------------------------------------------
-- 6. MODIFICANDO EL ORIGEN DE DATOS
--------------------------------------------------
ALTER TABLE EMPLEADOS_EXT
LOCATION ('empleados2.txt');

SELECT * FROM EMPLEADOS_EXT;

ALTER TABLE EMPLEADOS_EXT


LOCATION ('empleados1.txt', 'empleados2.txt');

WWW.TALLERESORACLE.COM Versión : 2023 - 06


Lección 05: Tablas Externas Talleres Oracle

--------------------------------------------------
-- 7. Incorporando información de archivos txt a tabla
-- estándar de Oracle
--------------------------------------------------
CREATE TABLE EMPLEADOS
( ID NUMBER(15),
PATERNO VARCHAR2(50),
MATERNO VARCHAR2(50),
NOMBRE VARCHAR2(50),
CTABANCO VARCHAR2(50),
BASICO NUMBER(15));

INSERT INTO EMPLEADOS


( ID, PATERNO, MATERNO, NOMBRE, CTABANCO, BASICO )
SELECT * FROM EMPLEADOS_EXT;

Commit;

SELECT * FROM EMPLEADOS;

WWW.TALLERESORACLE.COM Versión : 2023 - 06

También podría gustarte