A continuación, vamos a hablar de valores nulos. Un valor

Anuncio
A continuación, vamos a hablar de valores nulos.
Un valor nulo representa un estado desconocido
Utiliza NOT NULL en la definición de una columna cuando la
columna debe contener solo valores de datos conocidos.
Por ejemplo, tenemos la tabla Staff, tiene varias columnas
algunas de ellas, al igual que la primera, la columna ID
se definen como NOT NULL, significa que siempre deberás proporcionar un valor
para esa columna. Luego tenemos la columna denominada DEPT
y ésta se define como no nula. Pero cuando no proporciones un valor
DB2 colocará el valor de 10. Así que cuando se coloca
"with default 10” significa que el valor por defecto será 10
cuando no se proporciona ningún valor. Así, por ejemplo, no nulos
son necesarios cuando se están definiendo las claves principales de DB2.
Ahora vamos a hablar acerca de las tablas de catálogo del sistema.
DB2 crea automáticamente las tablas de catálogo del sistema
cuando se crea una base de datos.
Siempre residen en el espacio de tablas syscat.
Las tablas del catálogo del sistema contienen información de todos los objetos de la base de
datos.
Por ejemplo, cuando se crea un espacio de tablas
esta información será almacenada en una o más tablas de catálogo
cuando este espacio de tablas es referenciado en una operación posterior
DB2 comprueba las tablas de catálogo correspondientes
para ver si existe el espacio de tabla
y si la operación está permitida.
Sin las tablas del catálogo del sistema
DB2 no es capaz de funcionar.
Parte de la información contenida en las tablas de catálogo del sistema
incluyen lo siguiente: definiciones de todos los objetos de la base de datos,
tipos de datos de columna de las tablas y vistas,
restricciones definidas, privilegios de objeto,
dependencias de objetos, etc.
Las tablas o vistas de catálogo del sistema
utilizan los esquemas SYSIBM, SYSCAT o SYSSTAT.
El esquema SYSIBM se utiliza para las tablas base del catálogo del sistema.
El esquema SYSCAT se utiliza para las vistas definidas en base a las tablas de catálogo del
sistema.
Los usuarios de DB2 normalmente consultan
las vistas de SYSCAT en vez de las
tablas de SYSIBM tablas buscando información.
El esquema SYSCAT se utiliza para las vistas que contienen información sobre
estadísticas de base de datos, también está
basado en las tablas del catálogo del sistema.
Aunque no se pueden actualizar las tablas
y vista de los esquemas SYSIBM y SYSCAT
Si se pueden actualizar las vistas del esquema SYSCAT.
Actualizaciones de estas vistas, a veces puede influir en
el optimizador de DB2 para elegir un camino de acceso a los datos diferente.
Ahora vamos a hablar de los espacios de tabla temporales de usuario.
Las tablas temporales de usuario, pueden almacenar datos temporales
que son los datos que serán destruidos después de
una sesión o cuando la conexión termine.
Las tablas temporales se utilizan normalmente en situaciones en las cuales
se necesita realizar una operación sobre un conjunto de resultados grande
lo requieres para almacenar el conjunto de resultados temporalmente
y posteriormente procesarlo
Aunque el registro (logging) de transacciones se permite
con las tablas temporales, la mayoría de los usuarios
no necesitan registrar los datos temporales.
De hecho, al no haber registro de transacciones
para este tipo de tablas, mejora el rendimiento.
Las tablas temporales sólo existen para una conexión,
por lo tanto, no hay concurrencia o problemas de bloqueo.
Hay dos tipos de tablas temporales
'declare global temporary table' o DGTT
y 'create global temporary table' o CGTT.
Ambos son tablas temporales, pero las DGTT desaparecen por completo
incluyendo la definición de la tabla.
después que la aplicación se desconecta de la base de datos
mientras que las CGTT mantienen la definición de la tabla
aunque la tabla esté vacía.
Descargar