utilizando ddl sql oracle z051 cap 11
DESCRIPTION
Utilizando DDL SQL oracle Z051 Cap 11TRANSCRIPT
![Page 1: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/1.jpg)
Usando DDL
Cap 11
Alexander Calderón Peraza
![Page 2: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/2.jpg)
Principales objetos:
TablasVistasSinónimos
Es un alias para una tabla o vista ÍndicesSecuencias
Una estructura que genera números únicos
![Page 3: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/3.jpg)
Usuarios y Esquemas
En Oracle se usa indistintamente.
Un usuario es una persona que puede conectarse a la base de datos. Requiere username y password.
Un Schema es un contenedor para los objetos de los que un usuario es dueño. Cuando un usuario es creado, su esquema
es creado al mismo tiempo
![Page 4: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/4.jpg)
Reglas para los objetos de esquemas
De 1 a 30 caracteres de longitud, excepto database link names de 128 caracteres max
No se puede usar palabras reservadas
Se debe iniciar con letras, y se puede contener numeros, guion bajo, dólar y #
Letras minusculas se convierten en mayusculas
![Page 5: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/5.jpg)
NameSpace
Define un grupo de tipos de objeto, donde todos los nombres se identifican de forma única por el esquema y el nombre. Objetos que comparten el mismo
espacio de nombres:▪ Tablas▪ Vistas▪ Secuencias▪ Sinónimos privados
![Page 6: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/6.jpg)
Ejercicios
SELECT object_type, count(*) FROM user_objectsGROUP BY object_type;
SELECT table_name, cluster_name, iot_type
FROM user_tables;DESCRIBE regions;
![Page 7: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/7.jpg)
TIPOS DE DATOS
Un tipo de dato es un atributo de una parte de los datos que indica algo sobre la clase de datos sobre los que se va a procesar.
Esto incluye imponer restricciones en los datos, como qué valores pueden tomar y qué operaciones se pueden realizar.
![Page 8: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/8.jpg)
Tipos de dato alfanuméricos
VARCHAR2
NVARCHAR2 Igual varchar2 pero permite
caracteres unicode
CHAR
![Page 9: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/9.jpg)
Tipos de datos numéricos
NUMBER
FLOAT es la versión ANSI de number
INTEGER, equivale a number con cero decimales.
![Page 10: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/10.jpg)
Tipos de datos para fechas
DATE siglo, año, mes, día, hora, minutos y
segundos.TIMESTAMP
Igual a date pero una precisión de 9 decimales en los segundos
TIMESTAMP WITH TIMEZONE
Interval Year to Month Interval Day to Second
![Page 11: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/11.jpg)
Tipos de datos para objetos grandes
CLOB Tamaño prácticamente ilimitado de
caracteresNCLOBBLOB
Similar a Clob pero con datos binarios
BFILE Puntero a un archivo almacenado en
el SOLONG
Obsoleto, sustituido por CLOB
![Page 12: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/12.jpg)
Tipo de datos ROWID
Un valor codificado de 64 bits, que es un puntero para localizar una fila en una tabla.
Es propiedad de Oracle, y no es normalmente visible.
![Page 13: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/13.jpg)
Tipos mas utilizados
VARCHAR2 Debe indicarse la longitud maxima
NUMBER Puede indicarse opcionalmente la
precisión(numero max de digitos) y la escala(max de decimales)
DATE
![Page 14: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/14.jpg)
Ejercicio
SELECT column_name, data_type, nullable, data_length, data_precision, data_scale
FROM user_tab_columns WHERE table_name=‘EMPLOYEES’
![Page 15: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/15.jpg)
Creando tablas
CREATE TABLE [esquema].NombreTabla
(Columna DATATYPE [DEFAULT expresion],
Columna DATATYPE [DEFAULT expresion…
);
![Page 16: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/16.jpg)
Ejemplo
CREATE TABLE scott.emp ( EMPNO NUMBER(4), ENAME VARCHAR2(10), HIREDATE DATE default
trunc(sysdate), SAL NUMBER(7,2) );
Create table employees_copy as SELECT * FROM employees;
![Page 17: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/17.jpg)
Modificando la definicion Alter table EMP add (Job_id NUMBER(7));
Alter table EMP modify (comm number(4,2) default 0.05);
Alter table emp drop column comm;
Alter table emp rename column hiredate to recruited;
Alter table emp read only;
![Page 18: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/18.jpg)
Eliminando tablas
DROP TABLE [schema].TableName
Un Drop Table es irreversible a nivel de transaccion, pues ejecuta un COMMIT inmediato, ademas de forma similar a TRUNCATE no hace ninguna advertencia antes de ejecutarse.
![Page 19: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/19.jpg)
CONSTRAINTS
Limitaciones o medios por el cual podemos aplicar reglas de negocio a las tablas.
![Page 20: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/20.jpg)
Tipos de constraints
UNIQUE▪ Establece un conjunto de campos de forma unica.
NOT NULL▪ Obliga a que dicho campo contenga un valor.
PRIMARY KEY▪ Es la mejor de las llaves candidatas y nos sirve para
identificar de forma única una tupla FOREING KEY▪ Es definida en la tabla hija, y representa una
relación padre-hijo, los campos deben ser del mismo tipo en conjunto. Se aplican reglas de Eliminacion y Actualizacion.
![Page 21: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/21.jpg)
Tipos de constraints
CHECK Sirve para aplicar una regla simple
a un campo, la regla se verifica antes de la inserción o actualización de un valor
![Page 22: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/22.jpg)
Ejercicio
Create table emp as select employee_id empno, last_name ename, department_id deptno from employees;
Create table dept as select department_id deptno, department_name dname from departments;
Alter table emp add constraint emp_pk primary key(empno);
Alter table dept add constraint dept_pk primary key (deptno);
![Page 23: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/23.jpg)
ejercicio
Alter table emp add constraint dept_FK foreing key (deptno) references dept on delete set null;
![Page 24: Utilizando DDL SQL oracle Z051 Cap 11](https://reader033.vdocuments.net/reader033/viewer/2022061202/547caedeb4af9f2a0c8b457c/html5/thumbnails/24.jpg)
Cuando NO sonreímos se nos acaba la existencia