Documentos de Académico
Documentos de Profesional
Documentos de Cultura
com
2
Tablas y grupos de tablas
Este capítulo proporciona una introducción a los objetos de esquema y analiza las tablas, que son
los tipos más comunes de objetos de esquema.
• Resumen de tablas
A usuario de la base de datos cuenta tiene una contraseña y privilegios de base de datos específicos. Cada cuenta
de usuario posee un esquema único, que tiene el mismo nombre que el usuario. El esquema contiene los datos del
usuario propietario del esquema. Por ejemplo, elhora la cuenta de usuario es propietaria del hora esquema, que
contiene objetos de esquema como el empleados mesa. En una base de datos de producción, el propietario del
esquema generalmente representa una aplicación de base de datos en lugar de una persona.
Dentro de un esquema, cada objeto de esquema de un tipo particular tiene un nombre único. Por
ejemplo,empleados de horas se refiere a la mesa empleados en el hora esquema. Figura 2-1representa
un propietario de esquema llamado hora y objetos de esquema dentro del hora esquema.
2-1
Capitulo 2
Introducción a los objetos de esquema
Mesas Índices
Mesa
Mesa
Mesa
Usuario de RRHH
posee
Esquema
Objetos
Ver también:
"Descripción general de la seguridad de la base de datos"para obtener más información sobre los usuarios y los privilegios
2-2
Capitulo 2
Introducción a los objetos de esquema
Otros tipos de objetos también se almacenan en la base de datos y se pueden crear y manipular
con sentencias SQL pero no están contenidos en un esquema. Estos objetos incluyen cuentas de
usuario de base de datos, roles, contextos y objetos de diccionario.
2-3
Capitulo 2
Introducción a los objetos de esquema
Ver también:
• Guía del administrador de la base de datos Oracle para aprender a administrar objetos de
esquema
• Referencia del lenguaje SQL de la base de datos Oracle para obtener más información sobre los objetos de
esquema y los objetos de base de datos
Otros objetos de esquema, como vistas y secuencias, constan únicamente de metadatos. Este tema
describe solo los objetos de esquema que tienen segmentos.
Oracle Database almacena un objeto de esquema lógicamente dentro de un espacio de tabla. No hay
relación entre esquemas y espacios de tabla: un espacio de tabla puede contener objetos de diferentes
esquemas y los objetos de un esquema pueden estar contenidos en diferentes espacios de tabla. Los datos
de cada objeto están contenidos físicamente en uno o más archivos de datos.
La siguiente figura muestra una posible configuración de segmentos de índice y tabla, espacios de
tabla y archivos de datos. El segmento de datos de una tabla abarca dos archivos de datos, que
forman parte del mismo espacio de tabla. Un segmento no puede abarcar varios espacios de tabla.
2-4
Capitulo 2
Introducción a los objetos de esquema
Índice
Mesa Mesa
Índice
Mesa
Ver también:
• "Estructuras de almacenamiento lógicas"para obtener información sobre los espacios de tabla y los segmentos
• Guía del administrador de la base de datos Oracle para aprender a administrar el almacenamiento de
objetos de esquema
Algunos objetos de esquema se refieren a otros objetos, creando un dependencia del objeto de esquema.
Por ejemplo, una vista contiene un consulta que hace referencia a tablas o vistas, mientras que un PL / SQL
subprograma invoca otros subprogramas. Si la definición del objeto A hace referencia al objeto B, entonces
A es unobjeto dependiente en B, y B es un objeto referenciado para.
Oracle Database proporciona un mecanismo automático para garantizar que un objeto dependiente
esté siempre actualizado con respecto a sus objetos referenciados. Cuando crea un objeto
dependiente, la base de datos rastrea las dependencias entre el objeto dependiente
2-5
Capitulo 2
Introducción a los objetos de esquema
y sus objetos referenciados. Cuando un objeto referenciado cambia de una manera que podría afectar a un
objeto dependiente, la base de datos marca el objeto dependiente como inválido. Por ejemplo, si un usuario
elimina una tabla, no se puede utilizar ninguna vista basada en la tabla eliminada.
Como ilustración de cómo los objetos de esquema pueden crear dependencias, el siguiente script de
muestra crea una tabla mesa_prueba y luego un procedimiento que consulta esta tabla:
- - datos de proceso
NULL;
END LOOP;
FIN;
/
La siguiente consulta del estado del trámite test_proc muestra que es válido:
ESTADO DE OBJECT_NAME
-----------------
TEST_PROC VÁLIDO
Después de agregar el col3 columna a test_table, el procedimiento sigue siendo válido porque el
procedimiento no tiene dependencias en esta columna:
Cuadro alterado.
ESTADO DE OBJECT_NAME
-----------------
TEST_PROC VÁLIDO
Sin embargo, cambiar el tipo de datos del col1 columna, que el test_proc procedimiento
depende, invalida el procedimiento:
Cuadro alterado.
2-6
Capitulo 2
Introducción a los objetos de esquema
ESTADO DE OBJECT_NAME
-----------------
TEST_PROC INVALID
Ejecutar o recompilar el procedimiento hace que sea válido nuevamente, como se muestra en el siguiente
ejemplo:
ESTADO DE OBJECT_NAME
-----------------
TEST_PROC VÁLIDO
Ver también:
Guía del administrador de la base de datos Oracle y Guía de desarrollo de bases de datos Oracle para
aprender a administrar las dependencias de los objetos de esquema
Las cuentas administrativas tienen muchos privilegios y están destinadas solo a administradores de bases de
datos autorizados para realizar tareas como iniciar y detener la base de datos, administrar la memoria y el
almacenamiento, crear y administrar usuarios de la base de datos, etc.
los SYS La cuenta administrativa se crea automáticamente cuando se crea una base de datos. Esta cuenta
puede realizar todas las funciones administrativas de la base de datos. losSYS El esquema almacena las
tablas base y las vistas para el Diccionario de datos. Estas vistas y tablas base son críticas para el
funcionamiento de Oracle Database. Tablas en elSYS Los esquemas son manipulados solo por la base de
datos y nunca deben ser modificados por ningún usuario.
los SISTEMA La cuenta administrativa también se crea automáticamente cuando se crea una base de
datos. losSISTEMA El esquema almacena tablas y vistas adicionales que muestran información
administrativa, y tablas y vistas internas utilizadas por varias opciones y herramientas de Oracle
Database. Nunca use elSISTEMA esquema para almacenar tablas de interés para usuarios no
administrativos.
2-7
Capitulo 2
Introducción a los objetos de esquema
Ver también:
• "Cuentas de usuario"
• Guía del administrador de la base de datos Oracle aprender sobre SYS, SISTEMA, y
otras cuentas administrativas
Esquemas de muestra
Una base de datos de Oracle puede incluir esquemas de muestra, que son un conjunto de esquemas
interconectados que permiten que la documentación de Oracle y los materiales de instrucción de Oracle
ilustren las tareas comunes de las bases de datos.
los hora El esquema de muestra contiene información sobre empleados, departamentos y ubicaciones,
historiales de trabajo, etc. La siguiente ilustración muestra un diagrama de relación de entidades de
las tablas enhora La mayoría de los ejemplos de este manual utilizan objetos de este esquema.
DEPARTAMENTOS UBICACIONES
HORA departamento_id location_id
Nombre de Departamento Dirección
manager_id código postal
location_id ciudad
Ver también:
Esquemas de muestra de la base de datos de Oracle para aprender a instalar los esquemas
de muestra
2-8
Capitulo 2
Resumen de tablas
Resumen de tablas
A mesa es la unidad básica de organización de datos en una base de datos Oracle.
Una tabla describe un entidad, que es algo importante sobre qué información
se debe registrar. Por ejemplo, un empleado podría ser una entidad.
• Tablas relacionales
Las tablas relacionales tienen columnas simples y son el tipo de tabla más común.Ejemplo
2-1 muestra una CREAR MESA declaración para una tabla relacional.
• Tablas de objetos
Las columnas corresponden a los atributos de nivel superior de un tipo de objeto. Ver "
Descripción general de las tablas de objetos".
Puede crear una tabla relacional con las siguientes características organizativas:
• A tabla organizada en montón no almacena filas en ningún orden en particular. losCREAR MESA
instrucción crea una tabla organizada en montón de forma predeterminada.
• Un tabla organizada por índice ordena las filas de acuerdo con los valores de la clave principal. Para
algunas aplicaciones, las tablas organizadas por índices mejoran el rendimiento y utilizan el espacio en
disco de manera más eficiente. Ver "Resumen de tablas organizadas por índices".
• Un mesa externa es una tabla de solo lectura cuyos metadatos se almacenan en la base de datos pero
cuyos datos se almacenan fuera de la base de datos. Ver "Resumen de tablas externas".
Una mesa es permanente o temporal. Una definición de tabla permanente y los datos persisten en todas
las sesiones. Amesa temporal La definición persiste de la misma manera que una definición de tabla
permanente, pero los datos existen solo durante la duración de una transacción osesión. Las tablas
temporales son útiles en aplicaciones donde un conjunto de resultados debe mantenerse temporalmente,
quizás porque el resultado se construye ejecutando varias operaciones.
• Columnas
• Filas
• Ejemplo: instrucciones CREATE TABLE y ALTER TABLE
• Tipos de datos de Oracle
• Restricciones de integridad
• Almacenamiento de mesa
• Compresión de tabla
Ver también:
Guía del administrador de la base de datos Oracle para aprender a administrar tablas
2-9
Capitulo 2
Resumen de tablas
Columnas
Una definición de tabla incluye un nombre de tabla y un conjunto de columnas.
A columna identifica un atributo de la entidad descrita por la tabla. Por ejemplo, la columnaID de
empleado en el empleados La tabla se refiere al atributo de ID de empleado de una entidad de
empleado.
En general, le da a cada columna un nombre de columna, un tipo de datosy un ancho cuando crea una tabla.
Por ejemplo, el tipo de datos paraID de empleado es NÚMERO 6), lo que indica que esta columna solo puede
contener datos numéricos de hasta 6 dígitos de ancho. El ancho puede ser predeterminado por el tipo de
datos, como conFECHA.
Columnas virtuales
Una tabla puede contener un columna virtual, que a diferencia de una columna no virtual no
consume espacio en disco.
La base de datos deriva los valores en una columna virtual bajo demanda calculando un conjunto de
expresiones o funciones especificadas por el usuario. Por ejemplo, la columna virtualingreso podría
ser una función de la salario y Commission_pct columnas.
Ver también:
Guía del administrador de la base de datos Oracle para aprender a administrar columnas
virtuales
Columnas invisibles
Un columna invisible es una columna especificada por el usuario cuyos valores solo son visibles cuando la
columna se especifica explícitamente por nombre. Puede agregar una columna invisible a una tabla sin
afectar las aplicaciones existentes y hacer que la columna sea visible si es necesario.
En general, las columnas invisibles ayudan a migrar y evolucionar las aplicaciones en línea. Un caso
de uso podría ser una aplicación que consulta una tabla de tres columnas con unSELECCIONE *
declaración. Agregar una cuarta columna a la tabla rompería la aplicación, que espera tres
columnas de datos. Agregar una cuarta columna invisible hace que la aplicación funcione
normalmente. Luego, un desarrollador puede modificar la aplicación para manejar una cuarta
columna y hacer que la columna sea visible cuando la aplicación se active.
El siguiente ejemplo crea una tabla productos con una columna invisible contar, y luego
hace visible la columna invisible:
2-10
Capitulo 2
Resumen de tablas
Ver también:
• Guía del administrador de la base de datos Oracle para aprender a administrar columnas
invisibles
• Referencia del lenguaje SQL de la base de datos Oracle para obtener más información sobre
columnas invisibles
Filas
A hilera es una colección de información de columna correspondiente a un registro en una tabla.
Por ejemplo, una fila en el empleados La tabla describe los atributos de un empleado
específico: ID de empleado, apellido, nombre, etc. Después de crear una tabla, puede
insertar, consultar, eliminar y actualizar filas mediante SQL.
El siguiente ejemplo muestra el CREAR MESA declaración para el empleados mesa en el hora
esquema de muestra. La declaración especifica columnas comoemployee_id, first_name, y así
sucesivamente, especificando un tipo de datos como NÚMERO o FECHA para cada columna.
);
2-11
Capitulo 2
Resumen de tablas
El siguiente ejemplo muestra un ALTER TABLE declaración que agrega restricciones de integridad a la
empleados mesa. Las restricciones de integridad hacen cumplir las reglas comerciales y evitan la entrada de
información no válida en las tablas.
La siguiente salida de muestra muestra 8 filas y 6 columnas del empleados de horas mesa.
2-12
Capitulo 2
Resumen de tablas
• Una columna sin clave puede contener filas con valores idénticos. En el ejemplo, el valor
del salario para los empleados 101 y 102 es el mismo:17000.
• A clave externa columna se refiere a una clave principal o única en la misma tabla o en una
tabla diferente. En este ejemplo, el valor de90 en departamento_id corresponde a la
departamento_id columna de la departamentos mesa.
• A campo es la intersección de una fila y una columna. Puede contener solo un valor. Por
ejemplo, el campo para el ID de departamento del empleado 103 contiene el valor60.
• Un campo puede carecer de valor. En este caso, se dice que el campo contiene unnulo valor. El valor de
laCommission_pct la columna para el empleado 100 es nula, mientras que el valor en el campo para el
empleado 149 es.2. Una columna permite valores nulos a menos que un NO NULO o se ha definido
una restricción de integridad de clave primaria en esta columna, en cuyo caso no se puede insertar
ninguna fila sin un valor para esta columna.
Ver también:
Referencia del lenguaje SQL de la base de datos Oracle por CREAR MESA sintaxis y
semántica
Cada columna tiene un tipo de datos, que está asociado con un formato de almacenamiento
específico, restricciones y rango válido de valores. El tipo de datos de un valor asocia un conjunto fijo
de propiedades con el valor.
Estas propiedades hacen que Oracle Database trate los valores de un tipo de datos de manera diferente a
los valores de otro. Por ejemplo, puede multiplicar los valores deNÚMERO tipo de datos, pero no valores
del CRUDO tipo de datos.
Cuando crea una tabla, debe especificar un tipo de datos para cada una de sus columnas. Cada valor que
se inserta posteriormente en una columna asume el tipo de datos de la columna.
Oracle Database proporciona varios tipos de datos integrados. Los tipos de datos más utilizados se
dividen en las siguientes categorías:
Otras categorías importantes de tipos integrados incluyen sin formato, objetos grandes (LOB) y
colecciones. PL / SQL tiene tipos de datos para constantes y variables, que incluyenBooleano
tipos de referencia, tipos compuestos (registros) y tipos definidos por el usuario.
2-13
Capitulo 2
Resumen de tablas
Ver también:
• Referencia del lenguaje SQL de la base de datos Oracle para aprender sobre los tipos de datos SQL
integrados
• Referencia de tipos y paquetes de Oracle Database PL / SQL para aprender sobre los tipos
de datos PL / SQL
• Guía de desarrollo de bases de datos Oracle para aprender a utilizar los tipos de datos
integrados
Los tipos de datos de caracteres almacenan datos alfanuméricos en cadenas. El tipo de datos de caracteres
más común esVARCHAR2, que es la opción más eficiente para almacenar datos de caracteres.
La semántica de longitud de los tipos de datos de caracteres se puede medir en bytes o caracteres. El tratamiento
de cadenas como una secuencia de bytes se llamasemántica de bytes. Este es el valor predeterminado para los
tipos de datos de caracteres. El tratamiento de las cadenas como una secuencia de caracteres se denomina
semántica de caracteres. Un carácter es un punto de código del juego de caracteres de la base de datos.
Ver también:
• "Conjuntos de caracteres"
• Guía para desarrolladores de 2 días de Oracle Database para una breve introducción a los tipos de datos
• Guía de desarrollo de bases de datos Oracle para aprender a elegir un tipo de datos de
caracteres
2-14
Capitulo 2
Resumen de tablas
Nota:
Este manual usa los términos literal de texto, carácter literal, y cuerda
indistintamente.
Cuando crea una tabla con un VARCHAR2 columna, especifica una longitud máxima de cadena. En
Ejemplo 2-1, los apellido La columna tiene un tipo de datos de VARCHAR2 (25), lo que significa que
cualquier nombre almacenado en la columna tiene un máximo de 25 bytes.
Para cada fila, Oracle Database almacena cada valor en la columna como un campo de longitud
variable a menos que un valor exceda la longitud máxima, en cuyo caso la base de datos devuelve un
error. Por ejemplo, en un juego de caracteres de un solo byte, si ingresa 10 caracteres para el
apellido valor de la columna en una fila, luego la columna en la pieza de la fila almacena solo 10
caracteres (10 bytes), no 25. Usando VARCHAR2 reduce el consumo de espacio.
En contraste con VARCHAR2, CHAR almacena cadenas de caracteres de longitud fija. Cuando crea una tabla con un
CARBONIZARSE columna, la columna requiere una longitud de cadena. El valor predeterminado es 1 byte. La base de datos
utiliza espacios en blanco para rellenar el valor hasta la longitud especificada.
Comparación de la base de datos Oracle VARCHAR2 valores usando semántica de comparación no acolchada y
compara CARBONIZARSE valores utilizando semántica de comparación con relleno en blanco.
Ver también:
Referencia del lenguaje SQL de la base de datos Oracle para obtener detalles sobre la semántica de
comparación con relleno en blanco y sin relleno
Especifica un juego de caracteres nacional al crear una base de datos. El conjunto de caracteres de
NCHAR y NVARCHAR2 los tipos de datos deben ser AL16UTF16 o UTF8. Ambos juegos de caracteres
utilizan codificación Unicode.
Cuando crea una tabla con un NCHAR o NVARCHAR2 columna, el tamaño máximo siempre está en la
semántica de longitud de caracteres. La semántica de longitud de caracteres es la semántica de longitud
predeterminada y única paraNCHAR o NVARCHAR2.
Ver también:
Guía de soporte para la globalización de la base de datos de Oracle para obtener información sobre la función
de soporte de globalización de Oracle
2-15
Capitulo 2
Resumen de tablas
Los tipos de datos numéricos de Oracle Database almacenan números fijos y de punto flotante, cero e
infinito. Algunos tipos numéricos también almacenan valores que son el resultado indefinido de una
operación, que se conoce como "no es un número" oYaya.
Oracle Database almacena datos numéricos en formato de longitud variable. Cada valor se almacena
en notación científica, con 1 byte utilizado para almacenar el exponente. La base de datos utiliza hasta
20 bytes para almacenar elmantisa, que es la parte de un número de punto flotante que contiene sus
dígitos significativos. Oracle Database no almacena ceros iniciales y finales.
los NÚMERO el tipo de datos almacena números fijos y de coma flotante. La base de datos puede almacenar
números de prácticamente cualquier magnitud. Se garantiza que estos datos serán portátiles entre diferentes
sistemas operativos que ejecutan Oracle Database. losNÚMERO Se recomienda el tipo de datos para la mayoría de
los casos en los que debe almacenar datos numéricos.
Especifica un número de coma fija en el formulario NÚMERO(pag,s), dónde pag y s consulte las
siguientes características:
• Precisión
• Escala
los escala especifica el número de dígitos desde el punto decimal hasta el dígito menos
significativo. La escala positiva cuenta los dígitos a la derecha del punto decimal hasta el dígito
menos significativo inclusive. La escala negativa cuenta los dígitos a la izquierda del punto
decimal hasta el dígito menos significativo, pero sin incluirlo. Si especifica una precisión sin
escala, como enNÚMERO 6), entonces la escala es 0.
En Ejemplo 2-1, los salario la columna es de tipo NÚMERO (8,2), por lo que la precisión es 8 y la escala es 2.
Por lo tanto, la base de datos almacena un salario de 100.000 como 100000,00.
Oracle Database proporciona dos tipos de datos numéricos exclusivamente para números de
punto flotante: BINARY_FLOAT y BINARY_DOUBLE.
Estos tipos admiten todas las funciones básicas proporcionadas por el NÚMERO tipo de datos. Sin
embargo, mientrasNÚMERO usa precisión decimal, BINARY_FLOAT y BINARY_DOUBLEutilice
precisión binaria, que permite cálculos aritméticos más rápidos y, por lo general, reduce los
requisitos de almacenamiento.
2-16
Capitulo 2
Resumen de tablas
Ver también:
Referencia del lenguaje SQL de la base de datos Oracle para aprender sobre precisión, escala y
otras características de los tipos numéricos
los fecha y hora los tipos de datos son FECHA y TIMESTAMP. Oracle Database proporciona
soporte completo de zona horaria para marcas de tiempo.
los FECHA el tipo de datos almacena la fecha y la hora. Aunque las fechas y horas se pueden representar en
tipos de datos de caracteres o números,FECHA tiene propiedades especiales asociadas.
La base de datos almacena las fechas internamente como números. Las fechas se almacenan en campos
de longitud fija de 7 bytes cada uno, correspondientes al siglo, año, mes, día, hora, minuto y segundo.
Nota:
Las fechas son totalmente compatibles con las operaciones aritméticas, por lo que sumas y restas de las fechas de
La base de datos muestra las fechas de acuerdo con el especificado modelo de formato. Un modelo de
formato es un literal de carácter que describe el formato de una fecha y hora en una cadena de caracteres.
El formato de fecha estándar esDD-MON-RR, que muestra fechas en el formulario 01-ENE-11.
RR es parecido a YY (los dos últimos dígitos del año), pero el siglo del valor devuelto varía según el
año de dos dígitos especificado y los dos últimos dígitos del año actual. Suponga que en 1999 la
base de datos muestra01-ENE-11. Si el formato de fecha usaRR, luego 11 especifica 2011, mientras
que si el formato usa YY, luego 11 especifica 1911. Puede cambiar el formato de fecha
predeterminado tanto en la instancia de la base de datos como en el nivel de sesión.
Oracle Database almacena la hora en formato de 24 horas.HH: MI: SS. Si no se ingresa una porción de tiempo, entonces,
de manera predeterminada, la hora en un campo de fecha es 00:00:00 a. M. En una entrada de solo tiempo, la parte de la
fecha toma como valor predeterminado el primer día del mes actual.
Ver también:
• Guía de desarrollo de bases de datos Oracle para obtener más información sobre
siglos y máscaras de formato de fecha
• Referencia del lenguaje SQL de la base de datos Oracle para obtener información sobre los códigos de
formato de fecha y hora
2-17
Capitulo 2
Resumen de tablas
los TIMESTAMP el tipo de datos es una extensión del FECHA tipo de datos.
los FECHA Y HORA tipos de datos TIMESTAMP CON HUSO HORARIO y HORARIO CON HUSO HORARIO
LOCAL son conscientes de la zona horaria. Cuando un usuario selecciona los datos, el valor se ajusta a
la zona horaria de la sesión del usuario. Este tipo de datos es útil para recopilar y evaluar información
de fechas en regiones geográficas.
Ver también:
Referencia del lenguaje SQL de la base de datos Oracle para obtener detalles sobre la sintaxis de
creación e ingreso de datos en columnas de marca de tiempo
Cada fila almacenada en la base de datos tiene una dirección. Oracle Database utiliza unROWID tipo de
datos para almacenar la dirección (rowid) de cada fila en la base de datos.
• Los Rowids físicos almacenan las direcciones de las filas en tablas organizadas en montón,
grupos de tablas y particiones de tablas e índices.
• Los identificadores de fila lógicos almacenan las direcciones de las filas en tablas organizadas por índices.
• Los Rowids foráneos son identificadores en tablas foráneas, como las tablas DB2 a las que se accede a
través de una puerta de enlace. No son filas estándar de la base de datos Oracle.
Un tipo de datos llamado Rowid universal, o urowid, admite todos los tipos de rowids.
Uso de Rowids
Los usuarios finales y los desarrolladores de aplicaciones también pueden usar rowids para varias funciones
importantes:
• Los Rowids son el medio más rápido para acceder a filas particulares.
• Los Rowids brindan la capacidad de ver cómo está organizada una tabla.
• Los Rowids son identificadores únicos para las filas de una tabla determinada.
También puede crear tablas con columnas definidas utilizando el ROWID tipo de datos. Por ejemplo, puede
definir una tabla de excepción con una columna de tipo de datosROWID para almacenar los rowids de las
filas que violan las restricciones de integridad. Columnas definidas usando elROWIDel tipo de datos se
comporta como otras columnas de la tabla: los valores se pueden actualizar, etc.
2-18
Capitulo 2
Resumen de tablas
Pseudocolumna ROWID
Cada tabla en una base de datos Oracle tiene una pseudocolumna llamada ROWID.
A pseudocolumna se comporta como una columna de tabla, pero en realidad no se almacena en la tabla.
Puede seleccionar entre pseudocolumnas, pero no puede insertar, actualizar ni eliminar sus valores. Una
pseudocolumna también es similar a un SQLfunción sin argumentos. Las funciones sin argumentos suelen
devolver el mismo valor para cada fila del conjunto de resultados, mientras que las pseudocolumnas suelen
devolver un valor diferente para cada fila.
Valores de la ROWID Las pseudocolumnas son cadenas que representan la dirección de cada fila.
Estas cadenas tienen el tipo de datosROWID. Esta pseudocolumna no es evidente cuando se lista la
estructura de una tabla ejecutando SELECCIONE o DESCRIBIR, tampoco la pseudocolumna consume
espacio. Sin embargo, el rowid de cada fila se puede recuperar con una consulta SQL usando la
palabra reservadaROWID como nombre de columna.
ROWID
-----------------
AAAPecAAFAAAABSAAA
Ver también:
• "Formato de Rowid"
• Guía de desarrollo de bases de datos Oracle para aprender a identificar filas por
dirección
• Referencia del lenguaje SQL de la base de datos Oracle para aprender sobre los tipos de rowid
A modelo de formato es un carácter literal que describe el formato de fecha y hora o datos
numéricos almacenados en una cadena de caracteres. Un modelo de formato no cambia la
representación interna del valor en la base de datos.
Cuando convierte una cadena de caracteres en una fecha o un número, un modelo de formato determina
cómo la base de datos interpreta la cadena. En SQL, puede utilizar un modelo de formato como argumento
de laTO_CHAR y HASTA LA FECHA funciones para formatear un valor que se devolverá desde la base de datos
o para formatear un valor que se almacenará en la base de datos.
2-19
Capitulo 2
Resumen de tablas
EMPLEADO SALARIO
---------------------------------
Russell $ 14,000.00
El siguiente ejemplo actualiza una fecha de contratación utilizando el HASTA LA FECHA función con la
máscara de formato 'AAAA MM DD ' para convertir la cadena '1998 05 20 ' a un FECHA valor:
Ver también:
Referencia del lenguaje SQL de la base de datos Oracle para obtener más información sobre los modelos de
formato
Restricciones de integridad
Un restricción de integridad es una regla con nombre que restringe los valores de una o más
columnas en una tabla.
Las reglas de integridad de datos evitan la entrada de datos no válidos en tablas. Además, las restricciones pueden
evitar la eliminación de una tabla cuando existen ciertas dependencias.
Si una restricción está habilitada, la base de datos verifica los datos a medida que se ingresan o
actualizan. Oracle Database evita que se ingresen datos que no se ajustan a la restricción. Si una
restricción está deshabilitada, Oracle Database permite que los datos que no se ajustan a la
restricción ingresen a la base de datos.
En Ejemplo 2-1, los CREAR MESA declaración especifica NO NULO restricciones para elapellido, correo
electrónico, fecha_contratación, y Identificación del trabajo columnas. Las cláusulas de restricción
identifican las columnas y las condiciones de la restricción. Estas restricciones aseguran que las
columnas especificadas no contengan valores nulos. Por ejemplo, un intento de insertar un nuevo
empleado sin una identificación de trabajo genera un error.
Puede crear una restricción cuando o después de crear una tabla. Puede deshabilitar temporalmente las
restricciones si es necesario. La base de datos almacena restricciones en elDiccionario de datos.
Ver también:
• Referencia del lenguaje SQL de la base de datos Oracle para aprender sobre las cláusulas de
restricción de SQL
2-20