SQL Fundamentals I
Después de completar esta lección, usted
debería ser capaz de hacer lo siguiente:
 Clasificar los principales objetos de la base
 Revisar la estructura de la tabla
 Enumerar los tipos de datos que están
disponibles para las columnas
 Crear una tabla simple
 Explicar cómo se crean restricciones en el
momento de la creación de una tabla
 Describir cómo trabaja el esquema de objetos
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
Los nombres de tabla y nombres de columna
deben:
 Comenzar con una letra
 Tener 1-30 caracteres de longitud
 Contener sólo A-Z, a-z, 0-9, _, $ y #
 No duplicar el nombre de otro objeto
propiedad del mismo usuario
 No ser una palabra reservada en servidor
Oracle
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
 Para crear una tabla se debe tener:
◦ El privilegio CREATE TABLE
◦ Un área de almacenamiento
 Se especifica:
◦ El nombre de la tabla
◦ El nombre de la columna, el tipo de datos de
columna, y el tamaño de la columna
 Las tablas que pertenecen a otros usuarios no
están en el usuario de esquema propetario.
 Se debe utilizar el nombre del esquema
propietario como prefijo a las tablas
 Especificar un valor predeterminado para una
columna en una inserción.
 Valores literales, expresiones o funciones SQL son
valores legales .
 El nombre de otra columna o una pseudocolumna
son valores ilegales.
 El tipo de datos predeterminado debe coincidir con
el tipo de datos de columna.
 Crear la tabla:
 Confirmar la creación de la tabla:
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
 Puede utilizar varios tipos de datos de fecha
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
 Las restricciones imponen reglas a nivel de tabla.
 Las restricciones impiden la supresión de una tabla y
su contenido si hay dependencias.
 Los siguientes tipos de restricciones son válidas:
◦ NOT NULL
◦ UNIQUE
◦ PRIMARY KEY
◦ FOREIGN KEY
◦ CHECK
 Se puede nombrar a una restricción, o el servidor
de Oracle le genera un nombre utilizando el
formato SYS_Cn .
 Crear una restricción en cualquiera de los
siguientes momentos:
◦ Al mismo tiempo que la creación de la tabla
◦ Después de la creación de la tabla
 Definir una restricción a nivel de columna o tabla.
 Ver una restricción en el diccionario de datos.
 Sintaxis:
 Sintaxis de la restricción a nivel de columna:
 Sintaxis de la restricción a nivel de tabla:
 Ejemplo de una restricción a nivel de la
columna:
 Ejemplo de una restricción de nivel de tabla:
 Asegura que no se permiten valores nulos
para la columna:
 Definido ya sea en el nivel de tabla o el nivel
de la columna:
 Definido ya sea en el nivel de tabla o el
nivel de la columna:
 FOREIGN KEY: Define la columna en la tabla
secundaria en el nivel de tabla en restricciones
 REFERENCES: identifica la tabla y columna en la
matriz mesa
 ON DELETE CASCADE: Borra las filas dependientes en
la tabla secundaria cuando se elimina una fila de la
tabla padre
 ON DELETE SET NULL: Convierte clave externa
dependiente valores NULL
 Define una condición que cada fila debe
satisfacer
 Las siguientes expresiones no están
permitidos:
◦ Las referencias a pseudocolumnas CURRVAL,
NEXTVAL, LEVEL, y ROWNUM
◦ Las llamadas a funciones SYSDATE, UID, USER, y
USERENV
◦ Las consultas que hacen referencia a otros valores
en otras filas
 Departamento 55 no existe.
 No se puede eliminar una fila que contiene una
clave principal que es utilizado como una clave
externa de otra tabla.
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
 Crear una tabla e insertar filas mediante la
combinación de sentencia CREAR TABLE y la opción
AS subconsulta.
 Haga coincidir el número de columnas
especificadas en el número de columnas
subconsulta.
 Definir las columnas con los nombres de columna y
los valores por defecto.
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
 Agregar una nueva columna
 Modificar la definición de columna existente
 Definir un valor predeterminado para la nueva
columna
 Eliminar una columna
 Cambiar el nombre de una columna
 Cambiar el estado de una tabla a solo lectura
Puede utilizar la sintaxis de ALTER TABLE para:
 Poner una tabla en modo de sólo lectura, lo que
impide cambios de DDL o DML cambia durante el
mantenimiento de la tabla
 Establecer de nuevo en modo de lectura /
escritura
 Objetos de base de datos
◦ Reglas de nomenclatura
 Sentencia CREATE TABLE:
◦ Acceso a las tablas de otro usuario
◦ Opción DEFAULT
 Tipos de datos
 Descripción general de las restricciones: NOT
NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK
 Creación de una tabla utilizando una subconsulta
 Sentencia ALTER TABLE
◦ Tablas de sólo lectura
 Sentencia DROP TABLE
 Mueve una tabla a la papelera de reciclaje
 Elimina la tabla y todos sus datos por completo
si PURGE se especifica cláusula
 Invalida objetos dependientes y elimina objeto
privilegios en la tabla
Para los que tres de las siguientes afirmaciones
se puede utilizar restricciones?
a. Hacer cumplir las normas relativas a los
datos en una tabla cada vez que una fila es
insertada, actualizada o suprimida.
b. Prevenir eliminar una tabla.
c. Prevenir la creación de una tabla.
d. Prevenir la creación de datos en una tabla.
En esta lección, debe haber aprendido a utilizar la
sentencia CREATE TABLE para crear una tabla e
incluir restricciones:
 Clasificar los principales objetos de la base.
 Revisar la estructura de la tabla.
 Enumerar los tipos de datos que están
disponibles para las columnas.
 Crear una tabla simple.
 Explicar cómo se crean restricciones en el
momento de la creación de una tabla.
 Describir cómo funciona el esquema de objetos.
Esta práctica se abordan los siguientes temas:
 Creación de nuevas tablas
 Creación de una nueva tabla mediante la
sintaxis CREATE TABLE AS
 Verificar que existen tablas
 Configurar con el estado de sólo lectura de
una tabla
 Eliminar Tablas
Emmanuel Ortiz
Consultor Sr.
emmanueltiz@gmail.com
email / gtalk
emmanueltiz
Skype

Curso SQL - Leccion 11

  • 2.
  • 3.
    Después de completaresta lección, usted debería ser capaz de hacer lo siguiente:  Clasificar los principales objetos de la base  Revisar la estructura de la tabla  Enumerar los tipos de datos que están disponibles para las columnas  Crear una tabla simple  Explicar cómo se crean restricciones en el momento de la creación de una tabla  Describir cómo trabaja el esquema de objetos
  • 4.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 6.
    Los nombres detabla y nombres de columna deben:  Comenzar con una letra  Tener 1-30 caracteres de longitud  Contener sólo A-Z, a-z, 0-9, _, $ y #  No duplicar el nombre de otro objeto propiedad del mismo usuario  No ser una palabra reservada en servidor Oracle
  • 7.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 8.
     Para crearuna tabla se debe tener: ◦ El privilegio CREATE TABLE ◦ Un área de almacenamiento  Se especifica: ◦ El nombre de la tabla ◦ El nombre de la columna, el tipo de datos de columna, y el tamaño de la columna
  • 9.
     Las tablasque pertenecen a otros usuarios no están en el usuario de esquema propetario.  Se debe utilizar el nombre del esquema propietario como prefijo a las tablas
  • 10.
     Especificar unvalor predeterminado para una columna en una inserción.  Valores literales, expresiones o funciones SQL son valores legales .  El nombre de otra columna o una pseudocolumna son valores ilegales.  El tipo de datos predeterminado debe coincidir con el tipo de datos de columna.
  • 11.
     Crear latabla:  Confirmar la creación de la tabla:
  • 12.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 14.
     Puede utilizarvarios tipos de datos de fecha
  • 15.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 16.
     Las restriccionesimponen reglas a nivel de tabla.  Las restricciones impiden la supresión de una tabla y su contenido si hay dependencias.  Los siguientes tipos de restricciones son válidas: ◦ NOT NULL ◦ UNIQUE ◦ PRIMARY KEY ◦ FOREIGN KEY ◦ CHECK
  • 17.
     Se puedenombrar a una restricción, o el servidor de Oracle le genera un nombre utilizando el formato SYS_Cn .  Crear una restricción en cualquiera de los siguientes momentos: ◦ Al mismo tiempo que la creación de la tabla ◦ Después de la creación de la tabla  Definir una restricción a nivel de columna o tabla.  Ver una restricción en el diccionario de datos.
  • 18.
     Sintaxis:  Sintaxisde la restricción a nivel de columna:  Sintaxis de la restricción a nivel de tabla:
  • 19.
     Ejemplo deuna restricción a nivel de la columna:  Ejemplo de una restricción de nivel de tabla:
  • 20.
     Asegura queno se permiten valores nulos para la columna:
  • 22.
     Definido yasea en el nivel de tabla o el nivel de la columna:
  • 25.
     Definido yasea en el nivel de tabla o el nivel de la columna:
  • 26.
     FOREIGN KEY:Define la columna en la tabla secundaria en el nivel de tabla en restricciones  REFERENCES: identifica la tabla y columna en la matriz mesa  ON DELETE CASCADE: Borra las filas dependientes en la tabla secundaria cuando se elimina una fila de la tabla padre  ON DELETE SET NULL: Convierte clave externa dependiente valores NULL
  • 27.
     Define unacondición que cada fila debe satisfacer  Las siguientes expresiones no están permitidos: ◦ Las referencias a pseudocolumnas CURRVAL, NEXTVAL, LEVEL, y ROWNUM ◦ Las llamadas a funciones SYSDATE, UID, USER, y USERENV ◦ Las consultas que hacen referencia a otros valores en otras filas
  • 29.
  • 30.
     No sepuede eliminar una fila que contiene una clave principal que es utilizado como una clave externa de otra tabla.
  • 31.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 32.
     Crear unatabla e insertar filas mediante la combinación de sentencia CREAR TABLE y la opción AS subconsulta.  Haga coincidir el número de columnas especificadas en el número de columnas subconsulta.  Definir las columnas con los nombres de columna y los valores por defecto.
  • 34.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 35.
     Agregar unanueva columna  Modificar la definición de columna existente  Definir un valor predeterminado para la nueva columna  Eliminar una columna  Cambiar el nombre de una columna  Cambiar el estado de una tabla a solo lectura
  • 36.
    Puede utilizar lasintaxis de ALTER TABLE para:  Poner una tabla en modo de sólo lectura, lo que impide cambios de DDL o DML cambia durante el mantenimiento de la tabla  Establecer de nuevo en modo de lectura / escritura
  • 37.
     Objetos debase de datos ◦ Reglas de nomenclatura  Sentencia CREATE TABLE: ◦ Acceso a las tablas de otro usuario ◦ Opción DEFAULT  Tipos de datos  Descripción general de las restricciones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK  Creación de una tabla utilizando una subconsulta  Sentencia ALTER TABLE ◦ Tablas de sólo lectura  Sentencia DROP TABLE
  • 38.
     Mueve unatabla a la papelera de reciclaje  Elimina la tabla y todos sus datos por completo si PURGE se especifica cláusula  Invalida objetos dependientes y elimina objeto privilegios en la tabla
  • 39.
    Para los quetres de las siguientes afirmaciones se puede utilizar restricciones? a. Hacer cumplir las normas relativas a los datos en una tabla cada vez que una fila es insertada, actualizada o suprimida. b. Prevenir eliminar una tabla. c. Prevenir la creación de una tabla. d. Prevenir la creación de datos en una tabla.
  • 40.
    En esta lección,debe haber aprendido a utilizar la sentencia CREATE TABLE para crear una tabla e incluir restricciones:  Clasificar los principales objetos de la base.  Revisar la estructura de la tabla.  Enumerar los tipos de datos que están disponibles para las columnas.  Crear una tabla simple.  Explicar cómo se crean restricciones en el momento de la creación de una tabla.  Describir cómo funciona el esquema de objetos.
  • 41.
    Esta práctica seabordan los siguientes temas:  Creación de nuevas tablas  Creación de una nueva tabla mediante la sintaxis CREATE TABLE AS  Verificar que existen tablas  Configurar con el estado de sólo lectura de una tabla  Eliminar Tablas
  • 43.