Documentos de Académico
Documentos de Profesional
Documentos de Cultura
G210-0111-00
IBM Informix
G210-0111-00
Nota Antes de leer esta informacin y el producto al que da soporte, lea la informacin del apartado Avisos en la pgina C-1.
Primera edicin (octubre de 2002) Esta publicacin es la traduccin del original ingls IBM Informix DB-Access Users Guide, G251-1239-00. Este documento contiene informacin de propiedad de IBM. Se proporciona bajo un acuerdo de licencia y est protegido por la ley de copyright. La informacin contenida en esta publicacin no incluye ninguna garanta de producto y no deber considerarse como tal cualquier declaracin proporcionada en este manual. Cuando se enva informacin a IBM, se otorga a IBM un derecho no exclusivo para utilizar o distribuir la informacin del modo que estime apropiado sin incurrir por ello en ninguna obligacin con el remitente. Copyright International Business Machines Corporation 1996, 2002. Reservados todos los derechos.
Contenido
En esta presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . vii Acerca de este manual . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Tipos de usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Dependencias de software . . . . . . . . . . . . . . . . . . . . . . . . . ix Suposiciones acerca del entorno local . . . . . . . . . . . . . . . . . . . . . ix Caractersticas nuevas . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Convenios de documentacin . . . . . . . . . . . . . . . . . . . . . . . . . ix Convenios tipogrficos . . . . . . . . . . . . . . . . . . . . . . . . . . x Otros convenios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x Diagramas de sintaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Convenios de cdigo de ejemplo . . . . . . . . . . . . . . . . . . . . . . . xv Documentacin adicional . . . . . . . . . . . . . . . . . . . . . . . . . . xv Lectura relacionada . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii Conformidad con los estndares de la industria . . . . . . . . . . . . . . . . . . xviii IBM agradece sus comentarios . . . . . . . . . . . . . . . . . . . . . . . . xix Captulo 1. Cmo empezar con DB-Access . . . . . . . . . Qu es DB-Access? . . . . . . . . . . . . . . . . . . Utilizacin de DB-Access . . . . . . . . . . . . . . . . Configuracin de DB-Access . . . . . . . . . . . . . . . Instalacin previa a DB-Access . . . . . . . . . . . . . Variables de entorno . . . . . . . . . . . . . . . . . Creacin y utilizacin de las bases de datos de demostracin . . . . Bases de datos de demostracin . . . . . . . . . . . . . Instalacin de demostracin . . . . . . . . . . . . . . Sintaxis de la lnea de mandatos . . . . . . . . . . . . . Privilegios para la base de datos de demostracin . . . . . . . Permisos para los archivos de mandatos de SQL . . . . . . . . Cmo invocar DB-Access . . . . . . . . . . . . . . . . Inicio de la interfaz de mens de DB-Access . . . . . . . . Ejecucin de un archivo de mandatos . . . . . . . . . . . Visualizacin del esquema de informacin . . . . . . . . . Comprobacin de la conformidad con los estndares ANSI . . . Activacin de la caracterstica XLUF para caracteres no imprimibles Utilizacin interactiva de DB-Access en modalidad no de men . . Manuales relacionados . . . . . . . . . . . . . . . . . Captulo 2. Utilizacin de la interfaz de mens de Utilizacin de la interfaz de usuario de DB-Access . Utilizacin del teclado con DB-Access . . . . Utilizacin de mens . . . . . . . . . Utilizacin de pantallas de respuesta . . . . Utilizacin de la pantalla AYUDA . . . . . Utilizacin de una pantalla de editor . . . . Propuestas alternativas . . . . . . . . . .
Copyright IBM Corp. 1996, 2002
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . 1-1 . . 1-1 . . 1-2 . . 1-4 . . 1-4 . . 1-4 . . 1-6 . . 1-6 . . 1-7 . . 1-8 . . 1-10 . . 1-10 . . 1-10 . . 1-12 . . 1-18 . . 1-18 . . 1-19 . . 1-19 . . 1-20 . . 1-23
pantalla . . . . . . . . . . . . . . . . . . . . .
iii
Tareas de nivel de base de datos . . . . . . . . . . . . . . . . . . . . . . . 2-6 Tareas de nivel de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 Manuales relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 Captulo 3. Opcin RDSQL . . . . . . Visin general del men SQL . . . . . . Utilizacin de un editor del sistema. . . . La opcin Lenguaje-consulta . . . . . . Entrada de una sentencia de SQL nueva . . Utilizacin de las teclas de edicin . . . Restricciones de edicin. . . . . . . Ejecucin de una sentencia de SQL . . . . Sentencias soportadas por la opcin Ejec . Visualizacin de resultados satisfactorios Qu sucede cuando hay errores . . . . Modificacin de una sentencia de SQL . . Redireccin de los resultados de la consulta Envo de salida a una impresora . . . Envo de salida a un archivo. . . . . Envo de salida a una conexin . . . . Eleccin de una sentencia de SQL existente . Cmo guardar la sentencia de SQL actual . Visualizacin de informacin de tabla . . Eliminacin de una sentencia de SQL . . . Soporte para rutinas SPL . . . . . . . Manuales relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 . 3-2 . 3-2 . 3-3 . 3-4 . 3-5 . 3-6 . 3-7 . 3-8 . 3-10 . 3-11 . 3-12 . 3-14 . 3-14 . 3-14 . 3-15 . 3-16 . 3-17 . 3-18 . 3-20 . 3-21 . 3-24
Captulo 4. Opcin Base_datos . . . . . . . . . . . Seleccin de una opcin del men Base_datos . . . . . . . Seleccin de una base de datos . . . . . . . . . . . . Lista de bases de datos disponibles . . . . . . . . . . Especificacin de una base de datos . . . . . . . . . Creacin de una base de datos . . . . . . . . . . . . Especificacin de un espacio DB . . . . . . . . . . . Especificacin de anotacin cronolgica . . . . . . . . Salida del men CREAR BASE_DATOS . . . . . . . . Visualizacin de informacin de base de datos . . . . . . . Recuperacin de informacin sobre espacios DB . . . . . Recuperacin de informacin de entorno local no por omisin . Recuperacin de informacin sobre rutinas . . . . . . . Seleccin de una base de datos diferente . . . . . . . . Supresin de una base de datos . . . . . . . . . . . . Pantalla BORRAR BASE DE DATOS . . . . . . . . . Confirmacin de la decisin de supresin de una base de datos Cierre de una base de datos . . . . . . . . . . . . . Manuales relacionados . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . 4-1 . . 4-2 . . 4-2 . . 4-3 . . 4-4 . . 4-4 . . 4-5 . . 4-5 . . 4-6 . . 4-6 . . 4-8 . . 4-8 . . 4-9 . . 4-11 . . 4-11 . . 4-11 . . 4-12 . . 4-12 . . 4-13
Captulo 5. Opcin Tabla . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 Men TABLA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 Creacin o modificacin de una tabla . . . . . . . . . . . . . . . . . . . . . . 5-3
iv
Pantalla CREAR TABLA . . . . . . . . . . . . . . Pantalla ALTERAR TABLA . . . . . . . . . . . . . Utilizacin del editor de esquemas . . . . . . . . . . . Adicin de columnas a una tabla (opcin Agregar) . . . . . Creacin de la tabla (opcin Salir) . . . . . . . . . . . Modificacin de columnas (opcin Modificar) . . . . . . . Supresin de columnas (opcin Borrar) . . . . . . . . . Organizacin del almacenamiento y bloqueo (Opc_tablas) . . . Definicin de restricciones . . . . . . . . . . . . . Visualizacin de informacin de tabla . . . . . . . . . . Visualizacin de informacin de columna . . . . . . . . Visualizacin de informacin de ndice . . . . . . . . . Visualizacin de privilegios a nivel de tabla . . . . . . . Visualizacin de privilegios de referencias . . . . . . . . Visualizacin de restricciones de columna y valores por omisin. Visualizacin de activadores . . . . . . . . . . . . . Visualizacin de informacin de fragmentacin . . . . . . Eliminacin de una tabla . . . . . . . . . . . . . . . Manuales relacionados . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . .
. 5-3 . 5-4 . 5-5 . 5-6 . 5-12 . 5-12 . 5-13 . 5-14 . 5-26 . 5-36 . 5-38 . 5-41 . 5-42 . 5-43 . 5-43 . 5-46 . 5-47 . 5-48 . 5-49
Captulo 6. Opciones Conexin y Sesin . . . . . . . . . . . . . . . . . . . . 6-1 Eleccin de la opcin Conexin . . . . . . . . . . . . . . . . . . . . . . . . 6-1 Conexin a un entorno de bases de datos . . . . . . . . . . . . . . . . . . . . 6-2 Desconexin de un entorno de base de datos . . . . . . . . . . . . . . . . . . 6-5 Proceso de transacciones . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 Eleccin de la opcin Sesin . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 Apndice A. Cmo leer la ayuda en lnea para las sentencias de SQL. Apndice B. SQL de demostracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1 . B-1
Contenido
vi
En esta presentacin
Acerca de este manual . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Tipos de usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Dependencias de software . . . . . . . . . . . . . . . . . . . . . . . . . ix Suposiciones acerca del entorno local . . . . . . . . . . . . . . . . . . . . . ix Caractersticas nuevas . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Convenios de documentacin . . . . . . . . . . . . . . . . . . . . . . . . . ix Convenios tipogrficos . . . . . . . . . . . . . . . . . . . . . . . . . . x Otros convenios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x Caracterstica, producto y plataforma . . . . . . . . . . . . . . . . . . . . xi Diagramas de sintaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Cmo leer un diagrama de sintaxis . . . . . . . . . . . . . . . . . . . . . xiv Palabras clave y puntuacin . . . . . . . . . . . . . . . . . . . . . . . xiv Identificadores y nombres . . . . . . . . . . . . . . . . . . . . . . . . xiv Convenios de cdigo de ejemplo . . . . . . . . . . . . . . . . . . . . . . . xv Documentacin adicional . . . . . . . . . . . . . . . . . . . . . . . . . . xv Lectura relacionada . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii Conformidad con los estndares de la industria . . . . . . . . . . . . . . . . . . xviii IBM agradece sus comentarios . . . . . . . . . . . . . . . . . . . . . . . . xix Captulo 1. Cmo empezar con DB-Access . . . . . . . . . Qu es DB-Access? . . . . . . . . . . . . . . . . . . Utilizacin de DB-Access . . . . . . . . . . . . . . . . Configuracin de DB-Access . . . . . . . . . . . . . . . Instalacin previa a DB-Access . . . . . . . . . . . . . Variables de entorno . . . . . . . . . . . . . . . . . Creacin y utilizacin de las bases de datos de demostracin . . . . Bases de datos de demostracin . . . . . . . . . . . . . Instalacin de demostracin . . . . . . . . . . . . . . Sintaxis de la lnea de mandatos . . . . . . . . . . . . . Privilegios para la base de datos de demostracin . . . . . . . Permisos para los archivos de mandatos de SQL . . . . . . . . Cmo invocar DB-Access . . . . . . . . . . . . . . . . Inicio de la interfaz de mens de DB-Access . . . . . . . . Visualizacin del men principal . . . . . . . . . . . Visualizacin de otros mens u opciones . . . . . . . . Subopciones de men . . . . . . . . . . . . . . . Ejemplos de sintaxis de la lnea de mandatos . . . . . . . Ejecucin de un archivo de mandatos . . . . . . . . . . . Visualizacin del esquema de informacin . . . . . . . . . Comprobacin de la conformidad con los estndares ANSI . . . Activacin de la caracterstica XLUF para caracteres no imprimibles Utilizacin interactiva de DB-Access en modalidad no de men . . Lectura desde el teclado o el dispositivo de entrada estndar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 . . 1-1 . . 1-2 . . 1-4 . . 1-4 . . 1-4 . . 1-6 . . 1-6 . . 1-7 . . 1-8 . . 1-10 . . 1-10 . . 1-10 . . 1-12 . . 1-12 . . 1-12 . . 1-15 . . 1-17 . . 1-18 . . 1-18 . . 1-19 . . 1-19 . . 1-20 . . 1-20
vii
. .
. .
. .
. .
. .
. .
. .
. .
. 1-21 . 1-23
Esta presentacin proporciona una visin general de la informacin contenida en este manual y describe los convenios que se utilizan en el mismo.
Tipos de usuarios
Este manual se ha escrito para los usuarios siguientes: v Usuarios de bases de datos v Administradores de bases de datos v Programadores de aplicaciones de bases de datos En este manual se supone que tiene los conocimientos siguientes: v Conocimiento suficiente del sistema, del sistema operativo y de los programas de utilidad que proporciona el sistema operativo v Experiencia en trabajo con bases de datos relacionales o conocimientos de los conceptos de base de datos v Experiencia en programacin de sistemas Si tiene una experiencia limitada con las bases de datos relacionales, SQL o el sistema operativo, consulte los siguientes manuales de IBM Informix: v IBM Informix: Getting Started Guide v IBM Informix: Gua del usuario de GLS v IBM Informix: Guide to SQL Reference v IBM Informix: Guide to SQL Syntax v IBM Informix: Guide to SQL Tutorial
viii
Dependencias de software
Este manual supone que est utilizando uno de los servidores de bases de datos siguientes: v IBM Informix Extended Parallel Server, Versin 8.40 v IBM Informix Dynamic Server, Versin 9.40
Caractersticas nuevas
Para obtener una lista completa de las caractersticas nuevas del servidor de bases de datos, consulte la publicacin IBM Informix: Getting Started Guide.
Convenios de documentacin
Este apartado describe los convenios utilizados en este manual. Estos convenios facilitan la recopilacin de informacin de este volumen, as como de otros volmenes del conjunto de documentacin. Se describen los convenios siguientes: v Convenios tipogrficos v Otros convenios v Diagramas de sintaxis
En esta presentacin
ix
Convenios tipogrficos
Este manual utiliza los convenios siguientes para presentar trminos nuevos, ilustrar visualizaciones de pantalla, describir la sintaxis de los mandatos, etc.
Convenio PALABRA CLAVE cursiva cursiva cursiva negrita negrita Significado Todos los elementos primarios de una sentencia de lenguaje de programacin (palabras clave) aparecen en letras maysculas en un font serif. En el texto, los trminos nuevos y las palabras que se desea destacar aparecen en cursiva. En los ejemplos de sintaxis y cdigo, los valores de variable que debe especificar aparecen en cursiva. Los nombres de entidades de programa (como, por ejemplo, clases, sucesos y tablas), las variables de entorno, los nombres de archivo y de va de acceso y los elementos de interfaz (como, por ejemplo, iconos, elementos de men y botones) aparecen en negrita. La informacin que el producto visualiza y la informacin que el usuario entra aparecen en un tipo de letra monoespaciado. Las teclas que debe pulsar aparecen en letras maysculas en un font sans serif. Este smbolo indica un elemento de men. Por ejemplo Elija Herramientas Opciones significa que debe elegir el elemento Opciones del men Herramientas.
Consejo: Cuando se le indique que entre caracteres o que ejecute un mandato, pulse inmediatamente INTRO despus de realizar la entrada. Cuando se le indique que escriba el texto o que pulse otras teclas, no es necesario pulsar INTRO.
Otros convenios
En toda la documentacin, encontrar texto que se identifica mediante varios tipos diferentes de marcacin. Comentarios Los comentarios identifican tres tipos de informacin, como se muestra en los ejemplos siguientes:
Aviso: Identifica prrafos que contienen instrucciones vitales, advertencias o informacin crtica
Importante: Identifica prrafos que contienen informacin significativa acerca de la caracterstica o la operacin que se est describiendo Consejo: Identifica prrafos que ofrecen detalles adicionales o accesos directos para la funcionalidad que se est describiendo Caracterstica, producto y plataforma La marcacin de caractersticas, productos y plataformas identifica prrafos que contienen informacin especfica de caracterstica, especfica de producto o especfica de plataforma. A continuacin se muestran unos ejemplos de esta marcacin: Dynamic Server Identifica informacin que es especfica de IBM Informix Dynamic Server Fin de Dynamic Server Slo UNIX Identifica informacin que es especfica de las plataformas UNIX Fin de Slo UNIX Slo Windows Identifica informacin que es especfica del entorno Windows Fin de Slo Windows Esta marcacin puede aplicarse a uno o ms prrafos de un apartado. Cuando un apartado entero se aplica a un producto o una plataforma particular, esto se indica como parte del texto de cabecera: Clasificacin de tablas (slo Windows)
Diagramas de sintaxis
Esta gua utiliza diagramas creados con los componentes siguientes para describir la sintaxis de las sentencias y todos los mandatos distintos de los mandatos a nivel de sistema.
Componente Significado Empieza la sentencia.
En esta presentacin
xi
Componente
Significado La sentencia contina en la lnea siguiente. Los elementos de sintaxis distintos de las sentencias completas finalizan con este smbolo.
La sentencia contina desde la lnea anterior. Los elementos de sintaxis distintos de las sentencias completas empiezan con este smbolo. Finaliza la sentencia.
SELECT
Elemento necesario.
Elemento opcional.
DISTINCT
ASC DESC
Elemento opcional con eleccin. Si existe un valor por omisin, est impreso en negrita.
Elementos opcionales. Se permiten varios elementos; cada repeticin debe ir precedida de una coma.
ASC DESC
xii
Componente
Los elementos de sintaxis anteriores se combinan para formar un diagrama como el siguiente.
REORG nombre_tabla , INDEX ; OPTIMIZE ON OFF ( nombre_ndice ) RECALCULATE RANGES
Los diagramas de sintaxis complejos, como el de la sentencia siguiente, se repiten como ayudas de punto de referencia para los diagramas detallados de sus componentes.
LOAD DATA CLUSULA_ENTRADA CLUSULA_FORMATO CLUSULA DESCARTE ;
Entonces el diagrama de punto de referencia va seguido de un diagrama expandido de la parte sombreada en este caso, la clusula_entrada.
CLUSULA DE ENTRADA
INPUTFILE INDDN nombrearchivo
'NOMBREARCHIVO'
TAPE DEVICE
'NOMBRE DISPOSITIVO'
START RECORD
FILA_INICIO
STOP RECORD
fila_detencin
En esta presentacin
xiii
Cmo leer un diagrama de sintaxis La Figura 1 muestra un diagrama de sintaxis que utiliza algunos de los elementos listados en la descripcin anterior.
setenv INFORMIXC compilador nombre_vaacceso
Para crear un mandato correctamente, empiece en la parte superior izquierda con el mandato. Siga el diagrama hacia la derecha, incluyendo los elementos que desee. Los elementos del diagrama son sensibles a las maysculas y minsculas. La 1. 2. 3. Figura 1 ilustra los pasos siguientes: Escriba setenv. Escriba INFORMIXC. Proporcione un nombre de compilador o un nombre de va de acceso.
Despus de elegir compilador o nombre_vaacceso, llegar al terminador. El mandato est completo. 4. Pulse INTRO para ejecutar el mandato. Palabras clave y puntuacin Las palabras clave son palabras reservadas para las sentencias y todos los mandatos excepto los mandatos a nivel de sistema. Cuando aparece una palabra clave en un diagrama de sintaxis, sta se muestra en letras maysculas. Cuando utilice una palabra clave en un mandato, puede escribirla en letras maysculas o minsculas, pero debe respetar con exactitud la ortografa de la palabra clave que aparece en el diagrama de sintaxis. Tambin deber utilizar la puntuacin en las sentencias y los mandatos exactamente del modo en que se muestra en los diagramas de sintaxis. Identificadores y nombres Las variables sirven de espacios reservados para los identificadores y los nombres en los diagramas de sintaxis y los ejemplos. Puede sustituir una variable por un nombre arbitrario, un identificador o un literal, en funcin del texto. Las variables tambin se utilizan para representar elementos de sintaxis complejos que se expanden en diagramas de sintaxis adicionales. Cuando aparece una variable en un diagrama de sintaxis, un ejemplo o el texto, sta se muestra en minsculas cursivas. El siguiente diagrama de sintaxis utiliza variables para ilustrar el formato general de una sentencia SELECT simple.
xiv
SELECT
nombre_columna
FROM
nombre_tabla
Cuando escriba una sentencia SELECT de este formato, deber sustituir las variables nombre_columna y nombre_tabla por el nombre de una columna y una tabla especficas.
Si desea utilizar este cdigo de SQL para un producto especfico, deber aplicar las normas de sintaxis de dicho producto. Por ejemplo, si est utilizando DBAccess, deber delimitar las diversas sentencias con punto y coma. Si est utilizando una API de SQL, deber utilizar EXEC SQL al principio de cada sentencia y un punto y coma (u otro delimitador apropiado) al final de la sentencia. Consejo: Los puntos suspensivos en un ejemplo de cdigo indican que se aadir ms cdigo en una aplicacin completa, pero que no es necesario mostrarlo para describir el concepto que se est tratando. Para obtener instrucciones detalladas sobre cmo utilizar las sentencias de SQL para una herramienta de desarrollo de aplicaciones determinada o la API de SQL, consulte el manual para el producto.
Documentacin adicional
La documentacin de IBM Informix Dynamic Server se proporciona en diversos formatos: v Manuales en lnea. El CD de documentacin del paquete de soporte le permite imprimir la documentacin del producto. Puede obtener los mismos manuales en lnea en el sitio de documentacin en lnea de IBM
En esta presentacin
xv
Informix en http://www-3.ibm.com/software/data/informix/pubs/library/. v Ayuda en lnea. Este recurso puede proporcionar ayuda sensible al contexto, una consulta de los mensajes de error, sintaxis de lenguaje y ms elementos. v Notas de la documentacin, notas del release y notas de mquina. Las notas de documentacin, las notas del release y las notas de mquina estn ubicadas en el directorio donde est instalado el producto. La tabla siguiente describe estos archivos.
xvi
Slo UNIX En las plataformas UNIX, los archivos en lnea siguientes aparecen en el directorio $INFORMIXDIR/release/en_us/0333. Archivo en lnea Finalidad ids_dbacc_docnotes_9.40.html El archivo notas de documentacin para la versin de este manual describe temas que no estn incluidos en el manual o que se han modificado desde la publicacin del mismo. ids_unix_release_notes_9.40.html El archivo notas del release describe las diferencias de caractersticas de las versiones anteriores de los productos IBM Informix y cmo dichas diferencias pueden afectar a los productos actuales. Este archivo tambin contiene informacin sobre problemas conocidos y sus soluciones provisionales. ids_machine_notes_9.40.txt El archivo notas de mquina describe cualquier accin especial que debe realizar para configurar y utilizar los productos IBM Informix en el sistema. Las notas de mquina se denominan en funcin del producto descrito. Fin de Slo UNIX Slo Windows En la carpeta Informix aparecen los elementos siguientes. Para visualizar esta carpeta, elija Inicio Programas Informix Notas de la documentacin o Notas del release en la barra de tareas. Elemento de grupo de programas Descripcin Notas de la documentacin Este elemento incluye adiciones o correcciones a los manuales con informacin acerca de las caractersticas que pueden no estar incluidas en los manuales o que se han modificado desde la publicacin de los mismos. Este elemento describe las diferencias de caractersticas respecto a las versiones anteriores de los productos IBM Informix y cmo dichas diferencias pueden afectar a
En esta presentacin
xvii
los productos actuales. Este archivo tambin contiene informacin sobre problemas conocidos y sus soluciones provisionales. Las notas de mquina no se aplican a las plataformas Windows. Fin de Slo Windows v Archivos de mensajes de error. Los productos de software Informix proporcionan archivos ASCII que contienen mensajes de error y sus acciones correctivas. Slo UNIX Para leer los mensajes de error en UNIX, puede utilizar el mandato finderr para visualizar en lnea los mensajes de error. Fin de Slo UNIX Slo Windows Para leer los mensajes de error y las acciones correctivas en Windows, utilice el programa de utilidad Informix Error Messages. Para visualizar este programa de utilidad, elija Inicio Programas Informix en la barra de tareas. Fin de Slo Windows
Lectura relacionada
Si desea obtener una lista de publicaciones que proporcionan una presentacin de los servidores de bases de datos y de las plataformas de sistema operativo, consulte la publicacin IBM Informix: Getting Started Guide.
xviii
En esta presentacin
xix
xx
Qu es DB-Access?
DBAccess proporciona una interfaz de usuario para entrar, ejecutar y depurar sentencias de SQL (Structured Query Language - Lenguaje de consulta estructurada) y rutinas de SPL (Stored Procedure Language Lenguaje de procedimiento almacenado). SQL y SPL le permiten realizar tareas de definicin de datos, por ejemplo especificar el nmero y el tipo de columnas de datos de una tabla, y tareas de gestin de datos, por ejemplo almacenar, ver y cambiar datos de tabla. La interfaz de DBAccess le permite aplicar potentes extensiones de Informix en SQL y SPL. Puede utilizar DBAccess para los siguientes aspectos del proceso de bases de datos: v Utilizar consultas ad hoc que ejecuta de forma poco frecuente v Conectarse a una o ms bases de datos, transferir datos entre la base de datos y los archivos de texto externos y visualizar informacin acerca de una base de datos v Visualizar tablas de catlogo de sistema y el Esquema de informacin, que se explican en la publicacin IBM Informix: Guide to SQL Reference v Realizar ejercicios prcticos con las sentencias y los ejemplos que se proporcionan en la publicacin IBM Informix: Guide to SQL Tutorial o en la publicacin IBM Informix: Gua para el diseo y la implantacin de bases de datos
1-1
v Probar aplicaciones que piensa almacenar para utilizarlas en un entorno de produccin Importante: DBAccess no est pensado como entorno de desarrollo de aplicaciones. Cuando ejecute sentencias de SQL en DBAccess, se bifurcar de forma condicional o realizar un bucle mediante dichas sentencias.
Utilizacin de DB-Access
Puede utilizar la interfaz de usuario de DBAccess para: v Ejecutar sentencias de forma interactiva, eliminndolas despus de obtener los resultados deseados o guardndolas en un archivo para ejecutarlas de forma repetida. v Escribir sentencias directamente en la pantalla de entrada de texto de DBAccess o en el editor de texto que prefiera. v Iniciar DBAccess en modalidad de men y seleccionar opciones en los mens. La Figura 1-1 en la pgina 1-3 ilustra los dos niveles superiores de la jerarqua de mens de DBAccess. La vista de opciones disponibles resume los tipos de tareas de base de datos que puede llevar a cabo con DBAccess.
1-2
Lenguaje consulta
Conexin
Base de datos
Tabla
Sesin
Salir
Opciones del men Lenguaje de consulta: Nuevo Escribe sentencias de SQL nuevas en el editor de texto. Ejecutar Ejecuta sentencias de SQL actuales. Modif Modifica sentencias de SQL actuales en el editor de SQL. U-edit Conmuta a un editor del sistema para entrar o modificar sentencias de SQL. Out Enva la salida desde un archivo de SQL a una impresora, archivo o conexin. Traer Elige y carga un archivo en un editor de texto. Guardar Guarda sentencias de SQL en un archivo. Info Visualiza informacin de la tabla. Borrar Suprime un archivo de SQL de la base de datos. Salir Vuelve al men principal o a la lnea de mandatos.
Opciones del men Conexin: Conectar Se conecta a un servidor de bases de datos y selecciona una base de datos. Desconectar Se desconecta de un entorno de bases de datos. Salir Vuelve al men principal o a la lnea de mandatos.
Opciones del men Base datos: Escoger Selecciona una base de datos. Crear Crea una base de datos. Info Recupera informacin de la base de datos. Borrar Suprime una base de datos existente. CeRrar Cierra la base de datos actual. Salir Vuelve al men principal o a la lnea de mandatos.
Opciones del men Tabla: Crear Crea una tabla. Alterar Modifica una tabla. Info Suprime una tabla de la base de datos. Borrar Visualiza informacin de tabla. Salir Vuelve al men principal o a la lnea de mandatos.
1-3
Instrucciones Captulo 3, Opcin RDSQL, en la pgina 3-1 Captulo 4, Opcin Base_datos, en la pgina 4-1 Captulo 5, Opcin Tabla, en la pgina 5-1 Captulo 6, Opciones Conexin y Sesin, en la pgina 6-1 Captulo 6, Opciones Conexin y Sesin, en la pgina 6-1
Configuracin de DB-Access
Esta seccin revisa el procedimiento para configurar el entorno de DB-Access.
Variables de entorno
Como parte del proceso de instalacin y configuracin, el administrador de sistema o de bases de datos establece determinadas variables de entorno que permiten que los productos IBM Informix funcionen en un entorno de sistema operativo determinado. Este apartado lista las variables de entorno que afectan la posibilidad de utilizar DBAccess. Importante: Debe tener $INFORMIXDIR/bin en la va de acceso si utiliza DBAccess en una plataforma UNIX o %INFORMIXDIR%\bin en la va de acceso si utiliza DBAccess en una plataforma Windows. El sistema operativo utiliza la va de acceso para
1-4
localizar el script de inicializacin y el ejecutable dbaccess. Slo UNIX En un entorno UNIX, el servidor de bases de datos debe tener la configuracin de terminal apropiada de las que se listan en INFORMIXTERM. Fin de Slo UNIX Puede establecer las siguientes variables de entorno opcionales: Dynamic Server v DBACCNOIGN retrotrae una transaccin incompleta si ejecuta el mandato LOAD en modalidad de men. Fin de Dynamic Server Extended Parallel Server v DBACCNOIGN retrotrae una transaccin incompleta si se produce un error mientras se est en modalidad no de men. Fin de Extended Parallel Server v DBCENTURY le permite elegir la expansin apropiada para los valores de DATE y DATETIME que slo tienen un ao de dos dgitos como, por ejemplo, 15/04/98. v DBDATE especifica los formatos de usuario final de los valores de DATE. Consulte la publicacin IBM Informix: Migration Guide para obtener ms informacin sobre esta variable. v DBEDIT establece el editor de texto de DBAccess por omisin sin cambiar el editor de texto por omisin asociado con el shell del sistema operativo. Para obtener ms informacin sobre cmo utiliza DBAccess el editor de texto que especifique como valor por omisin, consulte el apartado Entrada de una sentencia de SQL nueva en la pgina 3-4. v DBFLTMASK establece los valores de coma flotante por omisin de los tipos de datos FLOAT, SMALLFLOAT y DECIMAL en un almacenamiento intermedio de 14 caracteres. El efecto de esta variable est limitado al tamao de visualizacin de DBAccess para los nmeros. v DELIMIDENT hace que el servidor de bases de datos interprete el texto entre comillas dobles () como identificadores en lugar de series de
1-5
caracteres. Dynamic Server v IFX_LONGID determina si una aplicacin de cliente puede manejar identificadores largos. Fin de Dynamic Server Para obtener ms informacin sobre las variables de entorno, consulte la publicacin IBM Informix: Guide to SQL Reference.
1-6
Extended Parallel Server v La base de datos sales_demo ilustra un esquema dimensional para aplicaciones de depsito de datos. Para obtener informacin de conceptos sobre el modelo de datos dimensional, consulte la publicacin IBM Informix: Gua para el diseo y la implantacin de bases de datos. Fin de Extended Parallel Server Dynamic Server v La base de datos superstores_demo ilustra un esquema relacional de objetos. La base de datos superstores_demo contiene ejemplos de tipos de datos ampliados, de herencia de tipos y tablas y de rutinas definidas por el usuario. Fin de Dynamic Server Para ver descripciones de las bases de datos y su contenido, consulte la publicacin IBM Informix: Guide to SQL Reference. Los scripts utilizados para instalar las bases de datos de demostracin residen en el directorio $INFORMIXDIR/bin en las plataformas UNIX y en el directorio %INFORMIXDIR%\bin en los entornos de Windows. La Tabla 1-1 lista las bases de datos disponibles para cada servidor de bases de datos. Para configurar o reinicializar la base de datos de demostracin, ejecute el script de inicializacin correspondiente que muestra la Tabla 1-1.
Tabla 1-1. Bases de datos de demostracin Tipo de servidor Todos los servidores de bases de datos Informix IBM Informix Extended Parallel Server IBM Informix Dynamic Server Nombre de base de Modelo datos stores_demo sales_demo superstores_demo Base de datos relacional Depsito de datos dimensional Base de datos relacional de objetos Script de inicializacin dbaccessdemo dbaccessdemo -dw dbaccessdemo_ud
Instalacin de demostracin
Cuando ejecute el script de instalacin para una base de datos de demostracin, el script le solicitar si desea copiar los archivos de mandatos SQL de ejemplo. Los archivos de mandatos que incluye la demostracin tienen una extensin .sql y contienen sentencias de SQL de ejemplo que puede utilizar.
Captulo 1. Cmo empezar con DB-Access
1-7
Inicialice o ejecute siempre DBAccess desde el directorio en el que desea almacenar los archivos de mandatos SQL por las siguientes razones: v Cada vez que cree o reinicialice la base de datos de demostracin, el script de instalacin le solicitar si desea una copia de los archivos de mandatos de ejemplo proporcionados con la base de datos de demostracin guardada en el directorio actual. v DBAccess slo lista los archivos del directorio actual que terminan con la extensin .sql. Los archivos de mandatos se describen en el Apndice B, SQL de demostracin, en la pgina B-1 Para preparar una base de datos de demostracin: 1. Cree un directorio nuevo. Slo UNIX Debe tener permisos de ejecucin y lectura de UNIX para cada directorio del nombre de va de acceso que cree. Fin de Slo UNIX 2. Cambie de directorio para ir al nuevo directorio y ejecute el script de inicializacin. Se describen los diversos modelos de base de datos disponibles para cada versin de servidor de bases de datos en la pgina 1-7. Para conocer las opciones que puede utilizar con el script de inicializacin, consulte el apartado Sintaxis de la lnea de mandatos en la pgina 1-8. 3. El script de inicializacin visualiza una serie de mensajes en la pantalla a medida que se crea la base de datos. El mensaje final del script le solicita que realice una eleccin. Si desea copiar los archivos de mandatos en el directorio que ha creado, pulse S. Consejo: Si desea eliminar cambios que ha realizado en la base de datos o en los archivos de mandatos, vuelva a ejecutar el script de inicializacin de demostracin. Cuando se visualice el mensaje de solicitud del script, pulse S para sustituir los archivos de mandatos por las versiones originales.
1-8
dbaccessdemo
-dw
Fin de Dynamic Server -dw -log nombrebd crea la base de datos sales_demo. solicita la anotacin cronolgica de transacciones para la base de datos de demostracin. sustituye el nombre de base de datos por omisin. Para obtener directrices sobre el nombre de objeto, consulte la publicacin IBM Informix: Guide to SQL Syntax. solicita una ubicacin de espacio DB determinada para la base de datos de demostracin.
-dbspace
nombre_espacioDB incluye la base de datos de demostracin. Si no especifica un nombre de espacio DB, los datos para la base de datos se ponen por omisin en el espacio DB raz. Para crear un espacio DB, utilice el programa de utilidad onspaces tal como se describe en la publicacin IBM Informix: Administrator's Guide. Ejemplos: v El mandato siguiente crea una base de datos denominada stores_demo:
Captulo 1. Cmo empezar con DB-Access
1-9
dbaccessdemo
v El ejemplo siguiente crea una instancia de la base de datos stores_demo denominada demo_db:
dbaccessdemo demo_db
v El mandato siguiente inicializa la base de datos stores_demo e inicializa tambin las transacciones de anotacin cronolgica:
dbaccessdemo -log
v El mandato siguiente crea una instancia de la base de datos stores_demo denominada demo_db en dbspace_2:
dbaccessdemo demo_db -dbspace dbspace_2
1-10
v Para ejecutar un archivo que contiene sentencias de SQL sin visualizar los mens de DBAccess, consulte el apartado Ejecucin de un archivo de mandatos en la pgina 1-18. v Para escribir opciones de DBAccess en la lnea de mandatos, sin la interfaz de men de pantalla completa, consulte el apartado Utilizacin interactiva de DB-Access en modalidad no de men en la pgina 1-20. v Para comprobar la versin de DBAccess o transferir caracteres no imprimibles en formato hexadecimal, consulte el apartado Activacin de la caracterstica XLUF para caracteres no imprimibles en la pgina 1-19. Slo Windows Puede configurar el icono de programa DBAccess para ejecutar cualquiera de los mandatos que muestra este captulo. Fin de Slo Windows Slo UNIX Si las variables de entorno TERM, TERMCAP o TERMINFO no permiten que DBAccess reconozca el tipo de terminal que est utilizando, el men principal no aparecer. En lugar de ello, aparecer un mensaje similar al texto siguiente:
Tipo de terminal desconocido.
Fin de Slo UNIX Slo Windows Si utiliza un terminal Windows para ejecutar DBAccess en un servidor de bases de datos UNIX, la ventana de emulacin de terminal debe emular un tipo de terminal que DBAccess pueda reconocer o el servidor de bases de datos visualizar en la ventana de emulacin de terminal un mensaje que indica que no se conoce el tipo de terminal. Para obtener ms informacin sobre INFORMIXTERM y la configuracin de terminal apropiada, consulte la publicacin IBM Informix: Installation Guide o la publicacin IBM Informix: Guide to SQL Reference. Fin de Slo Windows Consejo: Si el sistema operativo no puede encontrar dbaccess, escriba la va de acceso completa antes del nombre de programa, como se indica a continuacin:
Captulo 1. Cmo empezar con DB-Access
1-11
$INFORMIXDIR/bin/dbaccess
Sin argumentos, la palabra dbaccess inicia el men principal sin ninguna base de datos seleccionada y sin opciones activadas. Entonces puede seleccionar los submens del men principal. Visualizacin de otros mens u opciones Puede especificar las opciones mostradas en el diagrama siguiente para acceder directamente a los mens.
1-12
dbaccess -ansi basedatos -q opcin_men_RDSQL nombrearchivo tabla -t opcin_men_tabla tabla -d -c -s -e -v -V -X opcin_men_base_datos opcin_men_conexin basedatos nombrearchivo
Dynamic Server
dbaccess -ansi basedatos -q opcin_men_RDSQL nombrearchivo tabla -t opcin_men_tabla tabla -d -c -s -e -m -v -V -X opcin_men_base_datos opcin_men_conexin basedatos basedatos nombrearchivo nombrearchivo
Fin de Dynamic Server -ansi hace que DBAccess genere un aviso siempre que encuentra una extensin de Informix en la sintaxis que se ajusta a los
Captulo 1. Cmo empezar con DB-Access
1-13
estndares ANSI. Para obtener ms informacin, consulte el apartado Comprobacin de la conformidad con los estndares ANSI en la pgina 1-19. -c -d -e -m se inicia con el men CONEXIN como men de nivel superior. se inicia con el men BASE_DATOS como men de nivel superior. hace eco de cada lnea de un archivo de mandatos indicado por nombrearchivo. visualiza todos los mensajes de error generados por varios niveles del servidor que pertenecen a una sentencia de SQL en archivos de mandatos. Esta opcin slo est disponible para IBM Informix Dynamic Server. -q -s se inicia en el men RDSQL (men de SQL) como men de nivel superior. le conecta al men principal de DB-Access y visualiza informacin acerca de la sesin actual. Esta informacin incluye el nombre de servidor de bases de datos, el tipo de servidor de bases de datos, el sistema principal, las posibilidades del servidor y otros valores. -t -v o -V se inicia en el men TABLA como men de nivel superior. visualiza el nmero de versin y el nmero de serie de DBAccess sin iniciar la aplicacin. No puede utilizar ninguna otra opcin con -v o -V. activa el formato hexadecimal para las sentencias LOAD y UNLOAD. indica que no se est especificando una base de datos en la lnea de mandatos porque se ha especificado una base de datos en una sentencia DATABASE del archivo de mandatos. nombre de la base de datos a la que desea que DB-Access se conecte al arrancar la sesin actual. indica el nombre de un archivo de mandatos que se debe cargar con el men de SQL. especifica una tabla de la base de datos.
-X -
opcin_men_conexin opcin o subopcin del men Conexin. Consulte el apartado Opciones del men CONEXIN en la pgina 1-15.
1-14
opcin_men_base_datos opcin o subopcin del men Base_datos. Consulte el apartado Opciones del men BASE DATOS en la pgina 1-15. opcin_men_RDSQL opcin o subopcin del men RDSQL. Consulte el apartado Opciones del men LENGUAJE DE CONSULTA en la pgina 1-16. opcin_men_tabla opcin o subopcin del men Tabla. Consulte el apartado Opciones del men TABLA en la pgina 1-17. Si sale de un submen o una opcin que ha especificado en la lnea de mandatos, saldr directamente a la lnea de mandatos del sistema operativo. Subopciones de men Las siguientes subopciones de men le permiten acceder directamente a los submens. Opciones del men CONEXIN: -cc -cd elige la opcin Conectar del men CONEXIN. elige la opcin Desconectar del men CONEXIN.
Opciones del men BASE DATOS: -dc elige la opcin Crear del men BASE_DATOS. -dcl -dd -di le lleva a la opcin REGISTRAR del men CREAR BASE_DATOS.
elige la opcin Borrar del men BASE_DATOS. elige la opcin Informar del men BASE_DATOS. Con esta opcin, puede aadir otra letra del modo siguiente para ir al siguiente nivel de men y ver: -dib -din -dip informacin de espacios DB para la base de datos actual (slo OnLine). informacin de NLS para la base de datos actual. procedimientos almacenados de la base de datos actual.
Si no incluye un nombre de base de datos antes de cualquier opcin -di, deber elegir una base de datos actual en la pantalla SELECCIONAR BASE_DATOS.
1-15
-dl -ds
elige la opcin ceRrar del men BASE_DATOS. elige la opcin Escoger del men BASE_DATOS.
Opciones del men LENGUAJE DE CONSULTA: -qc -qd -qi elige la opcin Traer del men SQL. elige la opcin Borrar del men SQL. elige la opcin Info del men SQL. Con esta opcin, puede aadir otra letra tal como se muestra en la lista siguiente (y especificar una tabla) para ir al siguiente nivel de men y ver: -qic -qif -qig -qii -qio -qip -qir -qis columnas de la tabla informacin sobre la estrategia de fragmentacin para la tabla informacin sobre los activadores de la tabla ndices de la tabla restricciones de tabla privilegios de acceso de la tabla privilegio de consultas a nivel de tabla en la tabla informacin de estado de tabla
Si no incluye un nombre de tabla con la opcin -qi, deber elegir uno en la pantalla INFORMAR SOBRE TABLA. -qm -qn -qs -qu elige la opcin Modif del men SQL. elige la opcin Nuevo del men SQL. elige la opcin Grabar del men SQL. elige la opcin U-edit del men SQL. Si no incluye un nombre de base de datos antes de una opcin -q, deber elegir una base de datos actual en la pantalla SELECCIONAR BASE_DATOS. Cuando seleccione la opcin Modif en el men RDSQL, primero deber seleccionar un archivo de mandatos desde el que realizar la modificacin en el men TRAER. Entonces aparecer la pantalla MODIF en la que se mostrar el texto.
1-16
Consejo: No puede ir directamente a la opcin Ejec o Out del men SQL. Si lo intenta, se producir un mensaje de error. Opciones del men TABLA: -ta -tc -td -ti elige la opcin Alterar del men TABLA. elige la opcin Crear del men TABLA. elige la opcin Borrar del men TABLA. elige la opcin Informar del men TABLA. Con esta opcin, puede aadir otra letra tal como se muestra en la lista siguiente (y especificar una tabla) para ir al siguiente nivel de men y ver: -tic -tif -tig -tii -tio -tip -tir -tis columnas de la tabla informacin sobre la estrategia de fragmentacin para la tabla informacin sobre los activadores de la tabla ndices de la tabla restricciones de tabla privilegios de acceso de la tabla privilegio de consultas a nivel de tabla en la tabla informacin de estado de tabla
Si no incluye un nombre de tabla con la opcin -ti, deber elegir uno en la pantalla INFORMAR SOBRE TABLA. Si no incluye un nombre de base de datos antes de una opcin -t, deber elegir una base de datos actual en la pantalla SELECCIONAR BASE_DATOS. Ejemplos de sintaxis de la lnea de mandatos Suponga que el servidor de bases de datos que tiene en lnea contiene una base de datos denominada mystores. Para hacer que la base de datos mystores sea la actual, inicie DBAccess con el mandato siguiente:
dbaccess mystores
Puede especificar una base de datos de un servidor de bases de datos que no est en lnea. Por ejemplo, cualquiera de los mandatos siguientes selecciona la base de datos newstores del servidor de bases de datos xyz:
dbaccess newstores@xyz dbaccess //xyz/newstores
1-17
Cuando DBAccess se inicie, el nombre de base de datos y de servidor de bases de datos que especifique aparecern en la lnea de guiones, como muestra la Figura 1-2.
DB-Access: RDSQL Conexin Base_datos Tabla Sesin Salir
Figura 1-2. Men principal de DB-Access con nombre de base de datos y de servidor de bases de datos
El mandato de ejemplo siguiente ejecuta las sentencias de SQL del archivo sel_all.sql de la base de datos que especifica dicho archivo:
dbaccess - sel_all.sql
El Esquema de base de datos aade a la base de datos cuatro vistas de slo informacin que se ajustan a los estndares de X/Open XPG4 con extensiones de Informix. Despus de ejecutar xpg4_is.sql, utilice DBAccess para recuperar informacin sobre las tablas y columnas a las que tiene acceso en la base de datos especificada. Para obtener ms informacin sobre las vistas del Esquema de informacin, consulte la publicacin IBM Informix: Guide to SQL Reference. Consejo: No se recomienda instalar estas vistas que se ajustan a XPG4 en una base de datos ANSI, porque su formato difiere considerablemente del de las vistas del Esquema de informacin que se ajustan a ANSI que el comit de estndares de SQL ha definido.
1-18
No necesita especificar la opcin -ansi en la lnea de mandatos si se establece la variable de entorno DBANSIWARN. DBAccess visualiza el valor de SQLSTATE con el aviso bajo las circunstancias siguientes: v Se incluye la opcin -ansi o se establece la variable de entorno DBANSIWARN. v Se accede a una base de datos ANSI o se crea una base de datos de este tipo. v Se ejecuta DBAccess en modalidad de lnea o se especifica un archivo de entrada .sql. v La ejecucin de una sentencia de SQL genera un aviso en lugar de un error. Para obtener ms informacin sobre las bases de datos que se ajustan a ANSI, consulte la publicacin IBM Informix: Guide to SQL Reference y la publicacin IBM Informix: Guide to SQL Tutorial. Para obtener ms informacin sobre los valores de SQLSTATE, consulte la sentencia GET DIAGNOSTICS en la publicacin IBM Informix: Guide to SQL Syntax. La publicacin IBM Informix: Guide to SQL Syntax tambin proporciona informacin sobre la conformidad con ANSI en la sintaxis de SQL de Informix.
1-19
Para obtener ms informacin, consulte las descripciones de las sentencias LOAD y UNLOAD en la publicacin IBM Informix: Guide to SQL Syntax. Consulte tambin la descripcin de los diversos programas de utilidad de SQL en la publicacin IBM Informix: Migration Guide y la informacin de tipos de datos en la publicacin IBM Informix: Guide to SQL Reference.
1-20
Entrada de mandatos de proceso por lotes en plataformas UNIX: Puede utilizar un script de shell incorporado para proporcionar una o ms sentencias de SQL. Por ejemplo, puede utilizar el shell de UNIX C, Bourne o Korn con archivos de entrada estndar incorporados:
dbaccess mystores- <<EOT! select avg(customer_num) from customer where fname matches [A-G]*; EOT!
DBAccess interpreta cualquier lnea que empiece con un signo de exclamacin (!) como un mandato de shell. Puede combinar lneas de escape de shell con sentencias de SQL y ponerlas en sentencias de SQL, tal y como se indica a continuacin:
dbaccess mystores >select !echo hello >hello count(*) from systables; > (count(*)) 21 1 fila(s) obtenida(s). >
Conexin a un entorno de base de datos en modalidad no de men Puede utilizar la sintaxis CONNECT ... USER en las sentencias de SQL que emita en modalidad interactiva. Sin embargo, DBAccess no soporta la clusula USER de la sentencia CONNECT cuando se conecta a un servidor de bases de datos por omisin. Conexin en modalidad interactiva no de men: Cuando incluya la clusula USER identificador de usuario en una sentencia CONNECT en modalidad interactiva, DBAccess le solicitar que entre una contrasea. Puede entrar un identificador de usuario o pulsar la tecla INTRO. Si entra un identificador de
Captulo 1. Cmo empezar con DB-Access
1-21
usuario, siga las directrices para la sintaxis que se describen en la publicacin IBM Informix: Guide to SQL Syntax. Si entra una contrasea, sta no aparecer en la pantalla. Los dos siguientes ejemplos de mandatos muestran cmo conectarse a un servidor de bases de datos en modalidad interactiva. El primer ejemplo utiliza la sentencia CONNECT sin especificar un identificador de usuario.
dbaccess - > connect to @starfish; Conectado.
Si incluye la clusula USER en una sentencia CONNECT, tal como muestra el segundo ejemplo, DBAccess utilizar la supresin en eco para solicitarle una contrasea:
> connect to @starfish user marae; ENTER PASSWORD: Conectado.
Importante: Por razones de seguridad, no entre la contrasea en la pantalla donde sta pueda verse. No incluya tampoco la clusula USING contrasea en una sentencia CONNECT cuando utilice DBAccess interactivamente. Si est en modalidad interactiva e intenta entrar una contrasea antes de la solicitud, aparecer un mensaje de error. Conexin con un archivo o archivo de shell en modalidad de fondo: Puede ejecutar la clusula USER de una sentencia CONNECT en un archivo de DBAccess que incluya la clusula USER. El ejemplo siguiente utiliza un archivo de mandatos que contiene una sentencia CONNECT con una clusula USING para conectarse a un servidor de bases de datos:
dbaccess - connfile.sql
deber protegerse del acceso por parte de cualquier persona distinta del id_usuario que la clusula USER identifica.
1-22
Slo UNIX El ejemplo siguiente utiliza un archivo de shell para conectarse a un servidor de bases de datos. DBAccess le solicitar una contrasea.
dbaccess - - <<\! connect to @starfish user marae; ! ENTER PASSWORD:
Manuales relacionados
Para obtener informacin sobre cmo instalar el servidor de bases de datos, establecer variables de entorno y poner en lnea el servidor de bases de datos, consulte los manuales del servidor de bases de datos que se listan en la Tabla 1-2.
Tabla 1-2. Manuales relacionados Tarea o caracterstica Instalar el servidor de bases de datos Establecer variables de entorno .cshrc o .login Tema Sistema Todos UNIX Manual IBM Informix: Installation Guide IBM Informix: Installation Guide IBM Informix: Guide to SQL Reference IBM Informix: Installation Guide IBM Informix: Guide to SQL Reference Documentacin de UNIX IBM Informix: Administrator's Guide IBM Informix: Administrator's Guide IBM Informix: Guide to SQL Reference
Registro
Windows
Establecer permisos de UNIX Poner en lnea el servidor de bases de datos Crear espacios de bases de datos Otorgar permisos en objetos de base de datos
1-23
1-24
En este captulo
Este captulo proporciona informacin de presentacin acerca de los temas siguientes: v Utilizacin de la interfaz de usuario de DBAccess v Propuestas alternativas v Manuales relacionados Si est familiarizado con DBAccess, es posible que prefiera saltarse este captulo de presentacin.
2-1
El editor de SQL incorporado donde se entran y modifican las sentencias de SQL y SPL Una opcin para utilizar otro editor de su eleccin El comprobador de sintaxis de servidor de bases de datos y el depurador de ejecucin Almacenamiento, recuperacin y ejecucin de rutinas de SQL y SPL v Una eleccin de salida para consultas de base de datos e informes Las personas que no son programadores crean las bases de datos con el Editor de esquemas interactivo descrito en el Captulo 5, Opcin Tabla, en la pgina 5-1. Los programadores utilizan el entorno de programador de SQL descrito en el Captulo 3, Opcin RDSQL, en la pgina 3-1 El resto de este captulo resume cmo desplazarse por los mens y las pantallas.
CONTROL
2-2
Suprimir
La tecla Suprimir est etiquetada a veces BORRAR, CANCELAR o Supr. En la mayora de sistemas, utilice la tecla SUPRIMIR para cancelar o terminar anormalmente un programa o para salir del men actual y volver al men que est un nivel por encima. En este manual se hace referencia a la tecla SUPRIMIR como la tecla SUPR o la tecla de Interrupcin.
ESCAPE INTRO
La tecla ESCAPE suele estar ubicada en la esquina superior izquierda del teclado y es posible que lleve la etiqueta ESC. La tecla INTRO est ubicada en el lado derecho del teclado. Es posible que tenga la etiqueta INTRO o Nueva lnea o puede que est indicada con una flecha izquierda doblada.
BARRA ESPACIADORA La BARRA ESPACIADORA generalmente no lleva ninguna etiqueta. Interrupcin Emita el mandato stty -a en la lnea de mandatos y compruebe el valor de intr para ver si el terminal reconoce CONTROL-C o SUPRIMIR (descritas anteriormente) u otra tecla como la tecla de Interrupcin.
Utilizacin de mens
Los mens aparecen en la parte superior de cada pantalla. Generalmente, el men principal de DBAccess, como muestra la Figura 2-1, es el nivel superior de la jerarqua de mens. Puede seleccionar un submen como el nivel superior si invoca DBAccess con una opcin de submen, por ejemplo las que se describen en el apartado Ejecucin de un archivo de mandatos en la pgina 1-18.
DB-ACCESS: Lenguage-consulta Conexin Utilizar el Lenguaje de consulta SQL. Base _datos Tabla Sesin Salir
Un mensaje bajo el men de opciones describe brevemente la funcin de la opcin resaltada. Si resalta otra opcin, la descripcin cambia. Para averiguar qu hace otra opcin, simplemente resltela y lea la descripcin. La lnea de guiones en la parte inferior de la cabecera visualiza el nombre de la base de datos actual, si se ha seleccionado alguna, y un recordatorio de que se debe pulsar CONTROL-W para obtener ayuda.
2-3
Eleccin de una opcin de men En la Figura 2-1, el recuadro, o resaltado, indica que RDSQL es la opcin actual. Pulse INTRO para elegir la opcin resaltada o elija otra opcin del modo siguiente: v Utilice la BARRA ESPACIADORA o las teclas de flecha izquierda y derecha para mover el resaltado. Las opciones estn organizadas en anillo. Si mueve el resaltado a la derecha, ms all del final de la lista, la primera opcin se convierte otra vez en la actual. Pulse INTRO para elegir la opcin resaltada. v Escriba la letra de acceso directo que se muestra en maysculas en el nombre de la opcin que desea seleccionar. (Puede escribir la letra de acceso directo en maysculas o minsculas.) Dado que algunos mens tienen varias opciones que empiezan con la misma letra, la tecla de acceso directo no es siempre la primera letra de un nombre de opcin. Por ejemplo, en la Figura 2-2, el men BASE_DATOS, Crear y ceRrar empiezan con la letra c. Tal como indican las teclas de acceso directo en maysculas, pulse la letra C para seleccionar la opcin Crear y pulse la tecla R para seleccionar la opcin ceRrar.
BASE_DATOS: Escoger Crear Informar Borrar ceRrar Seleccionar una base de datos para trabajar con ella. Salir
DBAccess visualiza la pantalla para la opcin de men que seleccione. Salida de una pantalla de men Si el men tiene una opcin Salir, pulse la tecla S para salir del men. Si no existe ninguna opcin Salir, utilice la tecla de Interrupcin (generalmente SUPR o CONTROL-C) para salir del men. Entonces volver al men, a la pantalla o a la lnea de mandatos desde la que ha seleccionado el men de salida.
2-4
Soporte de idioma global (Global Language Support) Si el GLS (Soporte de lenguaje global) est habilitado, los elementos listados se clasifican de acuerdo con el orden de clasificacin del conjunto de cdigos del entorno local actual. Fin de Soporte de idioma global (Global Language Support) Lectura de la cabecera de pantalla La lnea superior de una pantalla de respuesta visualiza una solicitud como nombre de pantalla seguida de un signo doble de corchete angular (>>) y del cursor. Un mensaje bajo la solicitud proporciona instrucciones breves, por ejemplo Pulse CTRL-W para Ayuda. La lnea de guiones identifica la base de datos que seleccione como actual. Seleccin o entrada de valores en la pantalla El lugar donde entre la respuesta depender de la operacin, tal como muestran las dos elecciones siguientes: v Puede escribir un valor en la cabecera de una pantalla de entrada, despus de los corchetes angulares dobles (>>) en la parte superior de la pantalla. Por ejemplo, puede escribir un nombre de base de datos vlido despus de SELECCIONAR BASE_DATOS>>, como muestra la Figura 2-3. Pulse INTRO cuando haya acabado de escribir y DBAccess visualizar la siguiente pantalla o realizar otra accin apropiada. v Algunas pantallas tienen una lista en la parte inferior en la que pueden elegir un elemento en lugar de escribir la seleccin en la cabecera. Por ejemplo, la pantalla SELECCIONAR BASE_DATOS de la Figura 2-3 lista las bases de datos disponibles en el servidor de bases de datos actual. Utilice las teclas de flecha para resaltar el elemento que desea y, a continuacin, pulse INTRO. DBAccess visualizar la pantalla siguiente o realizar otra accin apropiada. Salida de una pantalla de respuesta Sin un men, una pantalla no puede tener una opcin Salir. Pulse la tecla de Interrupcin (generalmente SUPR o CONTROL-C) para volver al men o la pantalla anterior.
2-5
AYUDA: Pantalla Salir Mostrar la siguiente pgina de texto de Ayuda. --------------------------------------------------------------------------La opcin Ejec (Ejecutar) ejecuta las sentencias actuales RDSQL y muestra la salida en su terminal. Si hay errores: Si hay errores, un mensaje de error aparecer en la parte inferior de la pantalla y la opcin Modificar aparecer remarcada.
Si el texto de ayuda tiene ms de una pgina de longitud, la opcin Pantalla estar resaltada. Pulse INTRO para ver la pantalla siguiente. Para seleccionar la opcin Salir, resltela con la BARRA ESPACIADORA o la tecla de flecha derecha y, a continuacin, pulse INTRO o la tecla R. Si el texto de ayuda slo tiene una pgina de longitud, la opcin Salir estar resaltada y slo necesitar pulsar INTRO. Para ver una ilustracin de cmo leer los diagramas de sintaxis que aparecen al solicitar ayuda en lnea para crear, modificar o editar una sentencia de SQL, consulte el Apndice A, Cmo leer la ayuda en lnea para las sentencias de SQL.
Propuestas alternativas
Esta seccin ilustra algunas tareas de base de datos comunes y lista procedimientos alternativos para utilizarlas. Esta seccin puede ayudarle a determinar el mtodo preferido para utilizar la interfaz de DBAccess. Para cada tarea listada en esta seccin, el nmero de la ltima columna indica qu captulo se debe consultar para obtener instrucciones detalladas. Tambin necesitar los documentos asociados listados en el apartado Manuales relacionados en la pgina 2-10.
2-6
Para obtener ms informacin sobre cmo utilizar DBAccess desde la lnea de mandatos, consulte el apartado Cmo invocar DB-Access en la pgina 1-10. v Desde dentro de DBAccess, utilizar cualquier mtodo que se describa en la lista siguiente.
Pantalla de men CONEXIN Opcin o sentencia de SQL Conectar Accin Solicita el servidor de bases de datos, el nombre de usuario, la contrasea y el nombre de base de datos. Le conecta de acuerdo con las elecciones que realice. Conecta a una base de datos. Si utiliza un nombre de base de datos totalmente calificado, se conectar simultneamente al servidor de bases de datos. Elige una base de datos actual en una lista de bases de datos disponibles del servidor de bases de datos actual. Elige una base de datos como actual. Captulo 6
SQL
CONNECT
BASE_DATOS
Escoger
SQL
BASE_DATOS
Para crear su propia base de datos, utilice uno de los mtodos siguientes.
Pantalla de men BASE_DATOS Opcin o sentencia de SQL Crear Accin Solicita un nombre de base de datos, un espacio DB y opciones de anotacin cronolgica y, a continuacin, crea la nueva base de datos. Crea la base de datos que se indica en la sentencia con la configuracin apropiada para las palabras clave que se utilicen. Captulo 4
SQL
CREATE DATABASE
2-7
Para eliminar una base de datos, utilice uno de los mtodos siguientes.
Opcin o sentencia de Pantalla de men SQL BASE_DATOS Borrar Accin Lista las bases de datos disponibles y elimina la base de datos que elija en la lista. Elimina la base de datos que se indica en el mandato. Captulo 4
SQL
DROP DATABASE
Para cerrar una base de datos, utilice uno de los mtodos siguientes.
Opcin o sentencia de Pantalla de men SQL BASE_DATOS SQL CONEXIN ceRrar CLOSE DATABASE Desconectar Accin Cierra la base de datos actual. Cierra la base de datos actual. Cierra la base de datos actual y desconecta de un servidor de bases de datos. Cierra la base de datos actual y desconecta del servidor de bases de datos actual. Captulo 4 3 6
SQL
DISCONNECT CURRENT
Para visualizar informacin acerca de una base de datos, por ejemplo los espacios DB que la contienen, elija la opcin Info en el men BASE_DATOS.
Para realizar cambios en la estructura de una tabla, utilice uno de los mtodos siguientes.
2-8
Accin Le gua, con mens por las elecciones disponibles para cambiar una tabla existente. Le permite cambiar un esquema antes de crear la tabla. Cambia una tabla existente de acuerdo con las palabras clave que incluya con la sentencia. v Cambia una estrategia de fragmentacin existente (para una tabla o un ndice). v Crea los fragmentos de tabla.
Captulo 5
SQL
ALTER TABLE
SQL
ALTER FRAGMENT
Para eliminar una tabla de una base de datos, utilice uno de los mtodos siguientes.
Pantalla de men TABLA SQL Opcin o sentencia de SQL Borrar DROP TABLE Accin Elimina la tabla actual. Elimina la tabla indicada en el mandato. Captulo 4 3
Para visualizar informacin acerca la estructura y las caractersticas de una tabla, utilice uno de los mtodos siguientes.
2-9
Accin Proporciona un men de categoras de informacin de tabla disponibles. Le solicita que realice una seleccin en una lista de tablas disponibles y, a continuacin, proporciona el mismo men que la opcin Informar de la pantalla TABLA. Proporciona la informacin especificada en las palabras clave que incluya con la sentencia INFO.
Captulo 4
SQL
Info (opcin)
SQL
Para visualizar los datos almacenados en una tabla, ejecute una sentencia SELECT desde el editor de SQL. Utilice los procedimientos descritos en el Captulo 3, Opcin RDSQL, en la pgina 3-1. Consejo: Con DBAccess se incluyen varios archivos de mandatos que contienen sentencias SELECT de ejemplo para realizar prcticas. El Apndice B lista los archivos de demostracin que se proporcionan con la base de datos stores_demo.
Manuales relacionados
Cuando trabaje con cualquiera de los siguientes documentos asociados de IBM Informix, es posible que tenga razones para utilizar DBAccess: v La publicacin IBM Informix: Gua para el diseo y la implantacin de bases de datos presenta los conceptos bsicos de definicin de base de datos para diversos objetivos, estrategias y servidores de bases de datos de Informix. v La publicacin IBM Informix: Guide to SQL Tutorial presenta los conceptos bsicos de manipulacin de datos y explica cmo disear aplicaciones SQL y de otros lenguajes para seleccionar, combinar y modificar datos, as como para informar sobre los mismos. v El IBM Informix Client Software Developer's Kit contiene guas del programador para los desarrolladores cuyos datos residen en un servidor de bases de datos de Informix. Para obtener ms informacin sobre temas relacionados con DBAccess, consulte:
2-10
v La publicacin IBM Informix: Guide to SQL Syntax, que describe la sintaxis para todas las sentencias de SQL y SPL disponibles mediante DBAccess. v La publicacin IBM Informix: Guide to SQL Reference, que contiene informacin sobre: El catlogo de sistema Informix y vistas del Esquema de informacin La estructura y el contenido de la base de datos de demostracin Variables de entorno v La publicacin IBM Informix: Gua del usuario de GLS, que proporciona informacin sobre las caractersticas de GLS.
2-11
2-12
En este captulo
Este captulo describe cmo utilizar la opcin RDSQL del men principal de DBAccess. Al seleccionar la opcin RDSQL, DBAccess visualiza el men SQL. Utilice las diversas opciones del men SQL para entrar, modificar, guardar, recuperar y ejecutar sentencias de SQL. Utilice la opcin RDSQL para: v Conocer SQL y SPL. Por ejemplo, utilice la opcin RDSQL para realizar ejercicios de prcticas con los ejemplos de la publicacin IBM Informix: Guide to SQL Tutorial. v Crear y modificar estructuras de tabla como alternativa al Editor de esquemas de DBAccess. v Seleccionar, visualizar, aadir, actualizar y suprimir datos. DBAccess no tiene opciones de men para la manipulacin de datos. Este captulo tambin describe el soporte para las rutinas SPL.
Copyright IBM Corp. 1996, 2002
3-1
3-2
USAR-EDITOR >>vi Introducir un nombre de editor. (INTRO para el editor por defecto) -------------- mystores@dbserver1 ----------- Pulse CTRL-W para Ayuda -----
Figura 3-1. Pantalla de editor del sistema de ejemplo para entrar y modificar sentencias de SQL
El editor por omisin que DBAccess visualice depender de la preferencia que establezca para el sistema operativo: Slo UNIX v Los editores comunes del sistema UNIX son vi y ex. Fin de Slo UNIX Slo Windows v Si utiliza un programa de formato de texto, por ejemplo Write o WordPad, como valor por omisin del sistema, deber guardar los archivos .sql como texto. Fin de Slo Windows Pulse INTRO para seleccionar el editor por omisin que ha indicado despus de la solicitud USAR-EDITOR. Para utilizar un editor diferente, escriba el nombre de dicho editor y pulse INTRO.
La opcin Lenguaje-consulta
Para seleccionar SQL, elija la opcin RDSQL en el men principal. Pulse la tecla Q o resalte la opcin RDSQL y pulse INTRO. La opcin RDSQL visualiza el men SQL, como muestra la Figura 3-2.
SQL: Nuevo Ejec Modif Usar-editor Out Traer Guardar Introducir nuevas sentencias SQL utilizando el editor SQL. Info Borrar Salir
Si selecciona RDSQL en el men principal y no ha seleccionado una base de datos, aparecer la pantalla SELECCIONAR BASE_DATOS. Especifique una base de datos cuando se le solicite o pulse la tecla de Interrupcin para visualizar el men SQL. En el men SQL, cree o elija y ejecute una sentencia de SQL para especificar la base de datos actual.
Captulo 3. Opcin RDSQL
3-3
Importante: En la pantalla SELECCIONAR BASE_DATOS, los nombres de las bases de datos estn limitados a 18 caracteres. Si un nombre de base de datos tiene ms de 18 caracteres de longitud, ver los 17 primeros caracteres del nombre seguidos de un signo +. Entre un signo + para visualizar el nombre largo completo en vi. Para salir de vi, pulse ESC ZZ. El men SQL tiene las opciones siguientes.
Opcin Nuevo Ejec Modif Usar-editor Finalidad Borrar las sentencias actuales y situar el cursor en el editor SQL. Ejecutar las sentencias de SQL actuales. Permitirle modificar las sentencias de SQL actuales en el editor de SQL. Instrucciones Entrada de una sentencia de SQL nueva en la pgina 3-4 Ejecucin de una sentencia de SQL en la pgina 3-7 Modificacin de una sentencia de SQL en la pgina 3-12
Invocar un editor del sistema para Utilizacin de un editor del que se pueda modificar las sentencias sistema en la pgina 3-2 actuales o crear sentencias nuevas. Usar-editor es intercambiable con Nuevo y Modif. Redirigir la salida de la opcin Ejec a un archivo, una impresora o una conexin del sistema. Redireccin de los resultados de la consulta en la pgina 3-14
Out
Traer
Listar archivos de mandatos de SQL a Eleccin de una sentencia de fin de que se pueda elegir un archivo SQL existente en la pgina 3-16 para ejecutarlo o modificarlo. Guardar las sentencias de SQL Cmo guardar la sentencia de actuales en un archivo para utilizarlas SQL actual en la pgina 3-17 posteriormente. Visualizar informacin de tabla, por ejemplo columnas, ndices, privilegios, restricciones, activadores, estado y estrategia de fragmentacin. Suprimir un archivo de mandatos de SQL especificado. Volver al men principal. Visualizacin de informacin de tabla en la pgina 3-18
Guardar
Info
Borrar Salir
3-4
v Seleccione la opcin Nuevo en el men SQL. Aparece la pantalla NUEVO que indica que est utilizando el editor de SQL, tal como muestra la Figura 3-3.
NUEVO: ESC = Edicin terminada CTRL-A = Sobre./Insert. CTRL-X = Borrar carcter CTRL-D = Borrar resto de lnea CTRL-R = Redibujar
v Si prefiere trabajar con un editor diferente del que est instalado en el sistema, seleccione la opcin Usar-editor. Esta opcin se describe en el apartado Utilizacin de un editor del sistema en la pgina 3-2. Como muestra la Figura 3-3, la pantalla NUEVO se inicia con el cursor situado bajo la cabecera, lo que indica donde debe entrar el texto en la pantalla. Utilice el editor para entrar sentencias y editarlas antes de ejecutarlas. Para colocar en serie varias sentencias de SQL, seprelas con un punto y coma.
CONTROL-D CONTROL-R
CONTROL-X ESC
3-5
Si desea obtener ms informacin sobre las teclas de posicionamiento del cursor y de flecha, consulte el apartado Utilizacin del teclado con DB-Access en la pgina 2-2.
Restricciones de edicin
El editor de SQL no visualiza ms de 80 caracteres en una lnea y no reinicia lneas, tal como muestran las dos restricciones de este tipo siguientes: v Si elige un archivo de mandatos existente en el que los caracteres de una lnea se extienden ms all de la columna 80, DBAccess visualiza el signo de porcentaje (%) en la columna 80 para indicar un desbordamiento. No podr ver todos los caracteres que hay despus del signo de porcentaje, pero la sentencia se ejecutar correctamente. v Si escribe caracteres en un archivo de mandatos nuevo de forma que una lnea se extienda ms all de la columna 80, DBAccess escribir encima de todos los caracteres de la columna 80. El desbordamiento no se puede ver y la sentencia no se ejecutar correctamente. Para que aparezca el texto completo en la pantalla, pulse INTRO en un lugar dentro de los 80 primeros caracteres de cada lnea. Si necesita escribir una serie de caracteres entrecomillada que exceda de 80 caracteres, por ejemplo una insercin en una columna CHAR larga, utilice un editor del sistema en lugar del editor de SQL. Si desea incluir comentarios en el texto: v Utilice guiones dobles para las bases de datos que se ajustan a ANSI. v Ponga delante de cada lnea de comentario un guin doble (--) como indicador de comentario. El indicador de comentario incluye la lnea entera. v Utilice llaves ({ }) para las bases de datos que no se ajustan a ANSI. Incluya el indicador de comentario entero entre las llaves. Cuando utilice el editor de SQL, puede escribir tantas lneas de texto como necesite. No est limitado por el tamao de la pantalla, aunque puede que est limitado por las restricciones de memoria del sistema o por el tamao mximo de sentencia de SQL de 64 kilobytes. Si inserta ms lneas de las que puede contener una pantalla, el editor de SQL desplazar la pgina hacia abajo con el texto adicional. Los nmeros de lnea inicial y final de la pgina actual se visualizarn en la cuarta lnea de la pantalla de entrada de texto, como muestra la Figura 3-4.
3-6
NUEVO:
ESC = Edicin terminada CTRL-A = Sobre./Insert. CTRL-X = Borrar carcter CTRL-D = Borrar resto de lnea
CTRL-R = Redibujar
Cuando haya finalizado de entrar una o varias sentencias de SQL nuevas, pulse ESC para volver al men SQL. Aviso: Si no utiliza la opcin Guardar para guardar las sentencias que ha escrito, stas se suprimirn la siguiente vez que seleccione una opcin que borre el editor de SQL editor (por ejemplo Nuevo o Traer).
--------------- mystores@dbserver1 ----------- Pulse CTRL-W para Ayuda ----CREATE TABLE mystock ( stock_num SMALLINT, manu_code CHAR(3), description CHAR(15), unit_price MONEY(6), unit CHAR(4), unit_descr CHAR(15), PRIMARY KEY (stock_num, manu_code) CONSTRAINT FOREIGN KEY (manu_code) REFERENCES manufact )
stock_man_primary,
Figura 3-5. Men SQL con el texto de la sentencia de SQL preparado para ejecutarse
Pulse INTRO o la tecla E para seleccionar la opcin Ejec. DBAccess comprueba primero cada sentencia para asegurarse de que se ajusta a la sintaxis y las normas de uso de SQL. Si las sentencias no contienen errores de sintaxis, DBAccess las procesa. Consejo: Puede comprobar las sentencias SQL para ver si son compatibles con ANSI si establece la variable de entorno DBANSIWARN o si invoca DBAccess con la opcin -ansi.
3-7
3-8
Tabla 3-1. Sentencias de SQL para la opcin Ejec (continuacin) Opciones Sentencia de SQL DROP DISTINCT TYPE DROP DOMAIN DROP INDEX DROP OPAQUE TYPE DROP OPCLASS DROP FUNCTION DROP PROCEDURE DROP ROLE DROP ROW TYPE DROP SYNONYM DROP TABLE DROP TRIGGER DROP VIEW EXECUTE PROCEDURE EXECUTE FUNCTION GRANT GRANT FRAGMENT INFO INSERT LOAD LOCK TABLE OUTPUT RENAME COLUMN RENAME DATABASE RENAME TABLE REVOKE REVOKE FRAGMENT ROLLBACK WORK SELECT SET SET DATASKIP * * * * * * * * * * * * * * * * * * * * * XPS IDS * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3-9
Tabla 3-1. Sentencias de SQL para la opcin Ejec (continuacin) Opciones Sentencia de SQL SET DEBUG FILE TO SET EXPLAIN SET ISOLATION SET LOCK MODE SET LOG SET OPTIMIZATION SET PDQPRIORITY SET OPTIMIZATION SET TRANSACTION START VIOLATIONS TABLE STOP VIOLATIONS TABLE UNLOAD UNLOCK TABLE UPDATE UPDATE STATISTICS XPS * * * * * * * * * * * * * * * IDS * * * * * * * * * * * * * * *
Para obtener informacin sobre sentencias adicionales para el Optical Subsystem, consulte la publicacin IBM Informix: Optical Subsystem Guide. Consejo: Para ejecutar sentencias que no estn listadas, utilice las opciones Nuevo (o Usar-editor) y Guardar del men SQL para entrarlas y guardarlas y, a continuacin, ejecute el archivo guardado desde la lnea de mandatos.
Si utiliza la opcin Ejec con una sentencia SELECT y dicha sentencia SELECT se ejecuta correctamente, DBAccess visualiza los resultados solicitados bajo la cabecera. Si la consulta recupera ms filas de las que se pueden incluir en una sola pantalla, la pantalla de resultados tendr un men en la parte superior, como muestra la Figura 3-6.
3-10
EJEC: Prxima Rehacer Salir Mostrar la siguiente pgina de resultados de consulta. ------------------ mystores@dbserver1 -------------- Pulse CTRL-W para Ayuda -----customer_num call_dtime user_id call_code call_descr res_dtime res_descr 106 1997-06-12 08:20 maryj D Order was received, but two of the cans of ANZ tennis balls within the case were empty 1997-06-12 08:25 Authorized credit for two cans to customer, issued apology. Called ANZ buyer to report the QA problem. 110 1997-07-07 10:24 richc L Order placed one month ago (6/7) not received. 1997-07-07 10:30 Checked with shipping (Ed Smith). Order sent yesterday- we were waiting for goods from ANZ. Next time will call with delay if necessary.
Avance por la salida del modo siguiente: v Con la opcin Siguiente resaltada, pulse INTRO para avanzar la visualizacinpor las filas seleccionadas. La ltima pantalla de datos tiene un mensaje en la parte inferior que indica el nmero de filas que ha devuelto la consulta. v Seleccione Rehacer para volver a la primera pantalla de la salida de la consulta. v Seleccione Salir para salir la pantalla de salida y volver al men SQL. Si sale antes de llegar a la ltima pantalla de salida, un mensaje en la parte inferior de la pantalla indica que ha interrumpido la consulta.
Si se produce un error de ejecucin o de tiempo de ejecucin, DBAccess contina procesando la sentencia y devuelve un mensaje de error. Por ejemplo, si intenta crear una tabla que ya se ha creado, aparece el mensaje siguiente en la parte inferior de la pantalla:
310: La tabla (mavis.mystock) ya existe en la base de datos.
3-11
Si intenta ejecutar una sentencia que contiene ms de una sentencia de SQL, es posible que no vea el mensaje de error inmediatamente. Por ejemplo, si la primera sentencia es una sentencia SELECT que se ejecuta correctamente y la siguiente sentencia contiene un error de escritura, los datos que ha recuperado la primera sentencia aparecern en la pantalla antes de que aparezca el mensaje de error de la segunda sentencia. Cuando DBAccess detecta un error, le da una oportunidad para que edite la sentencia que ha producido el error. El proceso se detiene cuando se resalta la opcin Modif del men SQL. Seleccione uno de los mtodos siguientes para corregir la sentencia: v Pulse INTRO para elegir Modif, lo que le devolver al editor de SQL. v Seleccione la opcin Usar-editor para utilizar el editor por omisin de su eleccin.
------------------ mystores@dbserver1 -------------- Pulse CTRL-W para Ayuda -----CREATE TABLE mystock ( stock_num SMALLINT, manu_code CHAR(3), description CHAR(15) unit_price MONEY(6), unit CHAR(4), unit_descr CHAR(15), PRIMARY KEY (stock_num, manu_code) CONSTRAINT FOREIGN KEY (manu_code) REFERENCES manufact )
stock_man_primary,
Figura 3-7. Men SQL con el texto de la sentencia de SQL que se debe modificar
Si pulsa INTRO, DBAccess llama al editor de SQL y sita el cursor en la lnea con el primer error. Puede corregir el error con el editor de SQL o puede pulsar ESC para salir del men SQL y seleccionar la opcin Usar-editor para editar la sentencia con el editor del sistema. Para salir, realice uno de los pasos siguientes:
3-12
v Si utiliza el editor de SQL para realizar cambios, pulse ESC cuando haya terminado de editar la sentencia. v Si utiliza el editor del sistema para realizar cambios, salga del archivo de acuerdo con el convenio de dicho editor. Entonces, volver al men SQL, donde puede pulsar INTRO para ejecutar la sentencia otra vez. Si la sentencia de SQL es nueva, la pantalla estar en blanco. Si desea cambiar o llamar a dicha sentencia con la opcin Traer, aparecer el texto de la sentencia de SQL en la pantalla. Si se produce un error mientras ejecuta una sentencia de SQL, la pantalla de edicin contendr el mensaje de error con un puntero a la causa probable. La Figura 3-8 muestra el aspecto que puede tener una pantalla de editor despus de un error de sintaxis. El editor utilizado en este ejemplo visualiza el nombre del archivo temporal asignado a la sentencia de SQL.
CREATE TABLE mystock ( stock_num manu_code description unit_price
^ # #201:Ha ocurrido un error de sintaxis # unit CHAR(4), unit_descr CHAR(15), PRIMARY KEY (stock_num, manu_code) CONSTRAINT FOREIGN KEY (manu_code) REFERENCES manufact )
stock_man_primary,
Figura 3-8. Archivo de edicin de texto temporal con el texto de la sentencia de SQL que se debe corregir
Realice las correcciones en el texto. Cuando haya terminado de entrar o modificar la sentencia o las sentencias de SQL, salga del editor como lo hace normalmente. El men SQL vuelve a aparecer con la opcin Ejec resaltada. El texto de la sentencia aparece en la mitad inferior de la pantalla. Pulse INTRO para ejecutar la sentencia o seleccione otra opcin de men para guardar la sentencia en un archivo de mandatos o dirigir la salida de la misma.
3-13
--------------- mystores@dbserver1 ----------- Pulse CTRL-W para Ayuda ----SELECT * FROM customer
Para volver al men SQL sin redirigir los resultados de consulta desde una pantalla OUTPUT, pulse la tecla de Interrupcin.
3-14
OUTPUT NUEVO-FICHERO >> Introducir el nombre que se quiere asignar al nuevo fichero y pulsar Intro. ---------------- mystores@dbserver1 ----------- Pulse CTRL-W para Ayuda -----SELECT * FROM customer
Escriba el nombre del archivo y pulse INTRO. DBAccess reenva los resultados de la consulta a dicho archivo y visualiza un mensaje que indica cuntas filas se han recuperado. Los resultados de la consulta no aparecen en la pantalla. Aviso: Si entra el nombre de un archivo existente, este procedimiento sobregrabar el archivo existente con los resultados de la consulta. Opcin Agregar-fichero Para aadir los resultados de la consulta al final de un archivo existente sin sustituir su contenido, seleccione la opcin Agregar-fichero en el men OUTPUT. Aparecer la pantalla OUTPUT AGREGAR-FICHERO, como muestra la Figura 3-11.
OUTPUT AGREGAR-FICHERO >> Teclear el nombre del fichero al que agregar resultados y pulsar Intro. ---------------- mystores@dbserver1 ------------- Pulse CTRL-W para Ayuda -----SELECT * FROM customer
Escriba el nombre de un archivo existente donde desee aadir los resultados de la consulta y pulse INTRO. DBAccess aadir los resultados de la consulta al final de dicho archivo y visualizar un mensaje que indica cuntas filas se han recuperado. Los resultados de la consulta no aparecen en la pantalla.
3-15
Especifique un programa de destino, por ejemplo more, a travs del cual se debe conectar la salida. DBAccess enva los resultados a dicha conexin. Slo UNIX En un sistema operativo UNIX, deber tener permiso para ejecutar el programa de destino. Fin de Slo UNIX
Figura 3-13. Pantalla TRAER que muestra los archivos .sql actuales
Si no existe ninguna base de datos actual, la lista incluye todos los archivos de mandatos ubicados en el directorio actual y en cualquier directorio que la variable de entorno DBPATH especifique.
3-16
Importante: Esta lista incluye slo aquellos nombres de archivo que tienen la extensin .sql. Si crea un nuevo archivo de SQL fuera de DBAccess y lo guarda sin la extensin .sql, dicho archivo no aparecer en la lista de archivos a elegir. Aada la extensin .sql al nombre de archivo y, a continuacin, seleccione Traer otra vez. Nota: DBAccess slo puede reconocer los archivos que estn almacenados en el directorio desde el que ha iniciado DBAccess. Si el mandato Traer produce una lista vaca, y sabe que existen archivos de mandatos, salga de DBAccess, cambie de directorio para ir al directorio que contiene los archivos .sql y reinicie DBAccess. Para seleccionar un archivo de mandatos, utilice las teclas de flecha para resaltar el nombre o entre el nombre del archivo en la solicitud. Cuando vuelva a aparecer el men SQL, ste visualizar las sentencias del archivo de mandatos en la pantalla como las sentencias actuales. Para modificar, ejecutar, editar o producir estas sentencias, elija la opcin de men apropiada. Para salir de la pantalla TRAER sin seleccionar un archivo de mandatos, pulse la tecla de Interrupcin, que le devolver al men SQL.
Asigne la parte izquierda del nombre de archivo. Utilice de 1 a 10 caracteres. Empiece con una letra y, a continuacin, utilice cualquier combinacin de
3-17
letras, nmeros y subrayados (_). Pulse INTRO para guardar el archivo. Slo UNIX Puede utilizar letras en maysculas y minsculas en el nombre. Sin embargo, recuerde que los sistemas operativos UNIX son sensibles a las maysculas y minsculas. El archivo orders no es el mismo que Orders u ORDERS. Fin de Slo UNIX Al almacenar las sentencias en archivo, DBAccess aade la extensin .sql al nombre que se asigne. Por ejemplo, si denomina el archivo cust1, DBAccess almacena el archivo con el nombre cust1.sql. La pantalla TRAER sigue listando cust1, pero el sistema operativo identifica el mismo archivo que cust1.sql si lista los archivos de directorio desde la lnea de mandatos. Para salir de la pantalla GRABAR sin asignar un nombre a un archivo de mandatos, pulse la tecla de Interrupcin y volver al men SQL.
ndices
Lista el nombre, el propietario y el Visualizacin de informacin tipo (exclusivo o duplicado) de cada de ndice en la pgina 5-41 ndice para una tabla especificada. (La pantalla tambin muestra si el ndice est en un clster, el mtodo de acceso utilizado y los nombres de las columnas que estn en el ndice.)
3-18
Opcin Privilegios
Finalidad Lista los usuarios que tienen privilegios de seleccin (Select), actualizacin (Update), insercin (Insert), supresin (Delete), ndice (Index) y modificacin (Alter) a nivel de tabla. Lista los usuarios que tienen el privilegio de Referencias a nivel de tabla para la tabla especificada e indica cules son las columnas a las que pueden hacer referencia Lista el nombre de tabla, el propietario de tabla, el tamao de la fila (en nmero de bytes), el nmero de filas de la tabla (resultante de la ltima sentencia UPDATE STATISTICS), el nmero de columnas de una fila y la fecha en la que se ha creado la tabla Visualiza las restricciones referenciales, clave primaria, comprobacin y exclusivas y los valores por omisin de las columnas de la tabla especificada
Referencias
Estado
ninguna
resTricciones
Disparador Tabla
Visualiza informacin de cabecera y Visualizacin de cuerpo para un activador especificado activadores en la pgina 5-46 Vuelve a visualizar el men INFORMAR SOBRE TABLA para que pueda seleccionar una tabla a fin de solicitar informacin sobre el men INFO Visualiza la estrategia de fragmentacin para la tabla seleccionada Vuelve al men SQL ninguna
Fragmentos
Salir
La opcin Tabla del men principal visualiza un men TABLA, que a su vez tiene una opcin Informar. Las pantallas de la opcin Informar son las mismas para el men SQL y el men TABLA. Para obtener ms informacin sobre la opcin Informar, consulte el apartado Visualizacin de informacin de tabla en la pgina 5-36.
3-19
Para salir de la pantalla INFORMAR SOBRE TABLA sin solicitar informacin de tabla, pulse la tecla de Interrupcin.
Soporte de idioma global (Global Language Support) Si se ha habilitado GLS, el orden en el que DBAccess listar los nombres de los archivos de mandatos puede variar, en funcin del entorno local que utilice. Fin de Soporte de idioma global (Global Language Support) Escriba el nombre del archivo de mandatos que desea eliminar o resltelo con las teclas de flecha y pulse INTRO. Aparecer un men especial que le
3-20
solicitar una confirmacin antes de que se elimine el archivo de mandatos, como muestra la Figura 3-16.
CONFIRMAR: No S No, no se desea borrarlo. ----------------- stores_demo@dbserver1 ----------- Pulse CTRL-W para Ayuda ----alt_cat c_calls c_cat c_custom c_index c_items c_manuf c_orders c_proc c_state c_stock c_stores c_table c_trig c_type c_view1 c_view2 d_proc d_trig d_view del_stock ins_table opt_disk sel_agg sel_all sel_group sel_join sel_ojoin1 sel_ojoin2 sel_ojoin3 sel_ojoin4 sel_order sel_sub sel_union upd_table
El valor por omisin es No para ayudar a evitar que suprima por error un archivo de mandatos. Para eliminar el archivo de mandatos resaltado, pulse la tecla S o utilice la tecla de flecha derecha para resaltar S y pulse INTRO. DBAccess eliminar el archivo de mandatos y le devolver al men SQL. Para salir de la pantalla BORRAR FICHERO COMANDO sin eliminar un archivo de mandatos, pulse la tecla N, INTRO o la tecla de Interrupcin. Entonces volver al men SQL.
3-21
para la rutina en el bloque de sentencia de una sentencia CREATE PROCEDURE. Dynamic Server Si utiliza Dynamic Server, use la sentencia CREATE FUNCTION si la rutina devuelve valores. Para obtener ms informacin sobre la sentencia CREATE FUNCTION, consulte la publicacin IBM Informix: Guide to SQL Syntax. Fin de Dynamic Server 2. Utilice la opcin Ejec para crear la rutina y registrarla en la tabla de catlogo del sistema sysprocedures. 3. Utilice la pantalla NUEVO para entrar una sentencia EXECUTE PROCEDURE que indique el nombre de la rutina que desea ejecutar. Dynamic Server Si utiliza Dynamic Server y ha creado la rutina con la sentencia CREATE FUNCTION, entre una sentencia EXECUTE FUNCTION para ejecutar la funcin. Fin de Dynamic Server 4. Utilice la opcin Ejec para ejecutar la rutina y visualizar los resultados. La Figura 3-17 muestra el texto de la rutina en el archivo de mandatos c_proc.sql, que se proporciona con la base de datos de demostracin. Para probar esta rutina, utilice la opcin Traer y, a continuacin, seleccione c_proc. Dynamic Server Si utiliza Dynamic Server, cambie la palabra procedure en c_proc.sql por function porque la rutina devuelve un valor. Fin de Dynamic Server Para registrar la rutina en la base de datos, seleccione la opcin Ejec, como muestra la Figura 3-17.
3-22
SQL:
Nuevo
Ejec
Modif
Usar-editor
Out
Traer
Guardar
Info
Borrar
Salir
Ejecutar las sentencias SQL actuales. ----------------------- mydata@mynewdb ------- Pulse CTRL-W para Ayuda -------create procedure read_address (lastname char(15)) returning char(15), char(15), char(20), char(15),char(2), char(5); define p_fname, p_city char(15); define p_add char(20); define p_state char(2); define p_zip char(5); select fname, address1, city, state, zipcode into p_fname, p_add, p_city, p_state, p_zip from customer where lname = lastname; return p_fname, lastname, p_add, p_city, p_state, p_zip; end procedure;
Figura 3-17. Visualizacin del texto de una rutina SPL en el men SQL
DBAccess visualiza un mensaje para indicar que el servidor de bases de datos ha creado la rutina. Para ejecutar la rutina, seleccione Nuevo en el men SQL y, a continuacin, entre la sentencia EXECUTE apropiada. En el ejemplo siguiente, el usuario solicita la direccin de un cliente cuyo apellido es Pauli:
EXECUTE PROCEDURE read_address ("Pauli")
Fin de Dynamic Server Despus de entrar la sentencia EXECUTE PROCEDURE o EXECUTE FUNCTION en la pantalla NUEVO, pulse Esc para volver al men SQL. Seleccione Ejec en el men SQL para ejecutar la rutina. La Figura 3-18 muestra el resultado de la ejecucin de la rutina.
3-23
SQL:
Nuevo
Ejec
Modif
Usar-editor
Out
Traer
Guardar
Info
Borrar
Salir
Ejecutar las sentencias SQL actuales. ----------------------- mydata@mynewdb ------- Pulse CTRL-W para Ayuda -------Ludwig Pauli 213 Erstwild Court Sunnyvale CA 94086
Consejo: Las rutinas SPL se almacenan en las tablas de catlogo de sistema en formato ejecutable. Utilice la opcin Rutina del men INFO BASE DATOS para visualizar una lista de las rutinas de la base de datos actual o para visualizar el texto de una rutina especificada.
Manuales relacionados
Los siguientes manuales asociados proporcionan detalles para la implementacin de Informix de las sentencias de SQL y la lgica de programacin de SPL: v Para obtener informacin de gua de aprendizaje acerca de las sentencias de SQL y las rutinas de SPL, consulte la publicacin IBM Informix: Guide to SQL Tutorial. v Para obtener informacin de consulta sobre la sintaxis y el uso de las sentencias de SQL y SPL, consulte la publicacin IBM Informix: Guide to SQL Syntax. v Para obtener informacin de consulta sobre las tablas de catlogo de sistema, los tipos de datos y las variables de entorno de SQL, consulte la publicacin IBM Informix: Guide to SQL Reference. Dynamic Server v Si desea obtener informacin adicional sobre tipos de datos ampliados y rutinas definidas por el usuario, consulte la publicacin IBM Informix: Gua del desarrollador de rutinas y de tipos de datos definidos por el usuario. Fin de Dynamic Server
3-24
En este captulo
Este captulo describe cmo utilizar la opcin Base_datos. Para realizar cualquiera de las acciones siguientes, seleccione la opcin Base_datos en el men principal. v Crear o seleccionar una base de datos. La base de datos con la que trabaja se denomina base de datos actual. v Recuperar y visualizar informacin sobre una base de datos, por ejemplo los espacios DB disponibles y el texto de las rutinas. v Suprimir una base de datos existente o cerrar la base de datos actual. v Confirmar o retrotraer transacciones. Slo puede acceder a bases de datos que residen en el servidor de bases de datos actual. Para seleccionar un servidor de bases de datos como actual, puede especificar un servidor de bases de datos cuando invoque DBAccess, puede utilizar el men Conexin o puede ejecutar una sentencia CONNECT desde el men SQL. Si no selecciona explcitamente un servidor de bases de datos, DBAccess utilizar el servidor de bases de datos por omisin que la variable de entorno $INFORMIXSERVER especifique como base de datos actual.
4-1
Elimina una base de datos del sistema Supresin de una base de datos en la pgina 4-11 Cierra la base de datos actual Sale del men BASE_DATOS y le devuelve al men principal Cierre de una base de datos en la pgina 4-12 Ninguna
Si selecciona o crea una base de datos cuando otra ya est abierta, DBAccess cierra dicha base de datos antes de convertir la seleccin en la base de datos actual o nueva. La Figura 4-17 en la pgina 4-12 muestra el men TRANSACCIN que aparece si intenta abrir una base de datos nueva sin terminar primero una transaccin. Si entra el nombre de una base de datos no existente o una base de datos que DBAccess no puede localizar, DBAccess visualiza un mensaje de error.
4-2
SELECCIONAR BASE_DATOS >> Seleccionar una base de datos o introducir un nombre y pulsar Intro. -------------------------------------------- Pulse CTRL-W para Ayuda -------demodb@dbserver1 mydata@dbserver1 productn@factory
La pantalla SELECCIONAR BASE_DATOS tambin aparece siempre que se necesita especificar una base de datos, por ejemplo cuando elija la opcin Tabla o RDSQL sin especificar una base de datos en la lnea de mandatos de DBAccess. Importante: En la pantalla SELECCIONAR BASE_DATOS, los nombres de las bases de datos estn limitados a 18 caracteres. Si un nombre de base de datos tiene ms de 18 caracteres de longitud, ver los 17 primeros caracteres del nombre seguidos de un signo +. Entre un signo + para visualizar el nombre largo completo en vi. Para salir de vi, pulse ESC ZZ. Para salir de la pantalla SELECCIONAR BASE_DATOS y volver al men BASE_DATOS sin seleccionar una base de datos, pulse la tecla de Interrupcin.
4-3
Entre un nombre para la base de datos que desea crear y pulse INTRO. Nota: Puede asignar cualquier nombre a la base de datos, a condicin de que siga las directrices para la sintaxis que se describen en la publicacin IBM Informix: Guide to SQL Syntax. Para crear una base de datos en otro servidor de bases de datos, especifique el nombre de servidor con el nombre de base de datos. Siga las directrices para la sintaxis que se describen en la publicacin IBM Informix: Guide to SQL Syntax.
4-4
Despus de dar un nombre a la nueva base de datos, aparecer el men CREAR BASE_DATOS tal y como muestra la Figura 4-4.
CREAR BASE_DATOS : Dbspace Registrar Salir Seleccionar un DBspace para almacenar los datos de la base de datos. ------------------------------------------- Pulse CTRL-W para Ayuda -------
Puede especificar que una base de datos se almacene en un espacio DB no raz, crear una base de datos con o sin anotaciones cronolgicas de transacciones en almacenamiento intermedio o crear una base de datos que se ajuste a ANSI.
Especificacin de un espacio DB
Seleccione la opcin DBspace y aparecer la pantalla SELECCIONAR DBSPACE, como muestra la Figura 4-5.
SELECCIONAR DBSPACE >> Elija un DBspace con las teclas de cursor o introduzca un nombre y pulse Intro. --------------------------------------------- Pulse CTRL-W para Ayuda ------rootdbs pers_dbs empl_dbs
En la lista de espacios DB, seleccione un espacio DB disponible en el que almacenar los datos de base de datos. El valor por omisin es rootdbs o un espacio DB que cree como valor por omisin. Entonces volver al men CREAR BASE_DATOS.
El men REGISTRAR visualiza las opciones siguientes. Opcin Ninguno Finalidad No activa la anotacin cronolgica de transacciones (valor por omisin).
4-5
Especifica la anotacin cronolgica de transacciones sin almacenamiento intermedio. Especifica la anotacin cronolgica de transacciones con almacenamiento intermedio. Crea una base de datos conforme a ANSI con anotacin cronolgica de transacciones sin almacenamiento intermedio. Sale del men REGISTRAR y le devuelve al men CREAR BASE_DATOS.
Salir
El valor por omisin es Crear-nueva-basedatos. Pulse INTRO para crear una base de datos con los parmetros especificados, convertirla en la base de datos actual y volver al men BASE_DATOS. Si no desea crear la nueva base de datos, pulse la tecla A o utilice la tecla de flecha derecha para mover el cursor a la opcin Abandonar-nueva-basedatos y pulse INTRO. DBAccess no crea una base de datos nueva. Si sale sin especificar un valor para el espacio DB o la anotacin cronolgica, se aplicarn los valores por omisin a la base de datos.
4-6
La Figura 4-8 muestra el men INFO BASE DATOS para Extended Parallel Server e IBM Informix Dynamic Server.
INFO BASE DATOS: Dbspace Nls Rutina Bases_datos Salir Mostrar informacin de DBSPACE para una base de datos. ------------ demodb@dbserver1 ------- Pulse CTRL-W para Ayuda -----
NLS
Visualiza los valores NLS (Native Recuperacin de informacin de Language Support - Soporte de entorno local no por omisin en idioma nativo) para una base de la pgina 4-8 datos que soporte NLS. Esta opcin se proporciona por compatibilidad con versiones de base de datos de legado que soportan NLS. Lista los procedimientos de la base de datos actual. Seleccione un nombre de procedimiento para ver las sentencias del texto de dicho procedimiento. En Dynamic Server, la opcin rutinas lista los procedimientos y las funciones de la base de datos actual. Seleccione un nombre de rutina para ver el texto de dicha rutina. Selecciona una base de datos diferente sobre la que se deber recuperar informacin. Sale del men INFO BASE DATOS y le devuelve al men BASE_DATOS. Recuperacin de informacin sobre rutinas en la pgina 4-9
Procedimientos
Rutinas
Bases_datos
Salir
Para salir del men INFO BASE DATOS sin visualizar informacin acerca de la base de datos actual, pulse la tecla de Interrupcin para volver al men BASE_DATOS.
4-7
Id 3
Nombre dbspace2
Mirror N
Figura 4-9. Men INFO BASE DATOS con informacin de espacios DB visualizada
Figura 4-10. Men INFO BASE DATOS con informacin de NLS visualizada
Se visualizar un mensaje de error si la base de datos no soporta NLS o si las variables de entorno para NLS no se han establecido correctamente. Fin de Soporte de idioma nativo (Native Language Support) Soporte de idioma global (Global Language Support) DBAccess no proporciona una opcin en el men INFO BASE DATOS para visualizar la secuencia de clasificacin GLS y el tipo de clasificacin de
4-8
caracteres. Para obtener informacin sobre el entorno local GLS habilitado para el servidor de bases de datos, entre la siguiente consulta con el editor de SQL que se describe en el Captulo 3:
SELECT tabname, site FROM systables WHERE tabid = 90 OR tabid = 91
La fila con el tabid 90 almacena la categora COLLATION del entorno local de la base de datos. La fila con el tabid 91 almacena la categora CTYPE del entorno local de la base de datos. La Figura 4-11 muestra el resultado de la consulta anterior para el entorno local ingls de EE UU por omisin.
SQL: Nuevo Ejec Modif Usar-editor Out Traer Guardar Info Borrar Salir
Ejecutar las sentencias SQL actuales. --------------------- mydata@mynewdb ------ Pulse CTRL-W para Ayuda -------tabname site tabname site GL_COLLATE en_US.819 GL_CTYPE en_US.819
2 fila(s) recuperada(s)
Para obtener informacin adicional sobre las categoras COLLATION y CTYPE de un archivo de entorno local GLS, consulte la publicacin IBM Informix: Gua del usuario de GLS. Fin de Soporte de idioma global (Global Language Support)
4-9
el mismo aspecto aunque la solicitud utiliza palabras diferentes para una rutina de SPL.
SELECCIONAR RUTINA >> Elija una rutina con las flechas o introduzca un nombre y pulse Intro. --------------- demodb@dbserver1 ------------ Pulse CTRL-W para Ayuda -------read_address
Fin de Dynamic Server Si la rutina existe en el catlogo del sistema y se ajusta en el men INFO BASE DATOS, el texto aparece en la pantalla, como muestra la Figura 4-13.
INFO BASE DATOS: read_address: dBspace Nls Rutina Mostrar texto de rutina para una rutina seleccionada. Bases_datos Salir
--------------- demodb@dbserver1 ------------- Pulse CTRL-W para Ayuda -------create procedure read_address (lastname char(15)) returning char(15), char(15), char(20), char(15), char(2), char(5); define p_fname, p_city char(15); define p_add char(20); define p_state char(2); define p_zip char(5); select fname, address1, city, state, zipcode into p_fname, p_add, p_city, p_state, p_zip from customer where lname = lastname; return p_fname, lastname, p_add, p_city, p_state, p_zip; end procedure
Figura 4-13. Men INFO BASE DATOS con texto de la rutina seleccionada visualizado
Si el texto de la rutina no se ajusta en una pantalla, el men PANTALLA aparecer con texto parcial, como muestra la Figura 4-14.
PANTALLA: Prxima Rehacer Salir Mostrar la siguiente pgina de resultados. ----------------- demodb@dbserver1 ---------- Pulse CTRL-W para Ayuda ------create procedure read_address (lastname char(15)) returning char(15), char(15), char(20), char(15),char(2), char(5); define p_fname, p_city char(15); define p_add char(20); define p_state char(2); define p_zip char(5);
4-10
Para visualizar la siguiente pgina de texto, seleccione la opcin Prxima. Para visualizar el texto desde el principio, seleccione la opcin Rehacer.
No puede suprimir la base de datos actual. La base de datos actual es la base de datos cuyo nombre aparece en la lnea de guiones bajo la cabecera de la pantalla.
4-11
El valor por omisin es No, lo que ayuda a evitar que se suprima por error una base de datos. Si desea suprimir la base de datos resaltada, pulse la tecla S o utilice la tecla de flecha derecha para resaltar S y pulse INTRO. DBAccess suprime la base de datos y todos los datos que sta contiene. Deber estar absolutamente seguro de que elige la base de datos correcta que se debe suprimir.
Mediante el men TRANSACCIN el usuario se asegura de confirmar o retrotraer una transaccin activa antes de cerrar la base de datos actual. La lista siguiente muestra las dos opciones de men:
4-12
v La opcin por omisin es Commit. Pulse la tecla S o INTRO y DBAccess confirmar las transacciones y cerrar la base de datos. v Si desea retrotraer las transacciones, utilice una tecla de flecha para mover el resaltado a la opcin Rollback. Pulse INTRO y DBAccess retrotraer las transacciones y cerrar la base de datos. Aviso: Seleccione cuidadosamente una opcin. Si selecciona Commit, es posible que confirme transacciones que no desea y, si selecciona Rollback, perder las transacciones nuevas. Si pulsa la tecla de Interrupcin, DBAccess visualizar el men BASE_DATOS sin confirmar ni retrotraer las transacciones. El men TRANSACCIN tambin aparecer siempre que intente abrir una base de datos nueva o intente salir del sistema de mens de DBAccess sin terminar primero una transaccin. Estas instancias son los nicos casos en los que puede acceder al men TRANSACCIN desde DBAccess. Importante: Si empieza una transaccin en una base de datos conforme a ANSI pero no emite una sentencia COMMIT o una sentencia ROLLBACK y, a continuacin, intenta cerrar la base de datos utilizando una modalidad que no es de men, DBAccess confirmar la transaccin. Si no desea confirmar la transaccin, emita una sentencia ROLLBACK y una sentencia CLOSE DATABASE desde la lnea de mandatos.
Manuales relacionados
Los manuales siguientes contienen informacin pertinente a la conexin y creacin de bases de datos: v Para obtener informacin de sintaxis, consulte la publicacin IBM Informix: Guide to SQL Syntax. v Para obtener ms informacin sobre las variables de entorno, consulte la publicacin IBM Informix: Guide to SQL Reference. Soporte de idioma global (Global Language Support) v Para obtener informacin sobre las consideraciones acerca de GLS que se aplican a la apertura de una base de datos de un servidor de bases de datos diferente o a la conexin a dicha base de datos, consulte la publicacin IBM Informix: Gua del usuario de GLS.
4-13
El servidor de bases de datos examina la informacin de entorno local de cliente que pasa un cliente (por ejemplo DBAccess), verifica el entorno local de la base de datos y determina el entorno local de proceso de servidor para transferir los datos entre el cliente y la base de datos. Fin de Soporte de idioma global (Global Language Support)
4-14
5-1
Manuales relacionados .
. 5-49
En este captulo
Este captulo describe cmo utilizar las caractersticas de la opcin Tabla del men principal. Seleccione esta opcin si desea realizar cualquiera de las siguientes tareas de gestin de tablas sin programacin de SQL: v Crear una tabla nueva v Definir la estrategia de fragmentacin para una tabla nueva o existente v Modificar, suprimir o visualizar informacin acerca de una tabla existente
Men TABLA
Al pulsar la tecla T o seleccionar la opcin Tabla en el men principal, aparece el men TABLA, como muestra la Figura 5-1.
TABLA: Crear Alterar Crear una nueva tabla. Informar Borrar Salir
Si no existe ninguna base de datos actual al seleccionar la opcin Tabla, aparecer la pantalla SELECCIONAR BASE_DATOS. Realice una seleccin en una lista de bases de datos definidas para el servidor de bases de datos actual o pulse la tecla de Interrupcin para visualizar el men principal. Importante: En la pantalla SELECCIONAR BASE_DATOS, los nombres de las bases de datos estn limitados a 18 caracteres. Si un nombre de base de datos tiene ms de 18 caracteres de longitud, ver los 17 primeros caracteres del nombre seguidos de un signo +. Entre el signo + para visualizar el nombre largo completo en vi. Para salir de vi, pulse ESC ZZ.
5-2
Utilice las opciones del men TABLA como muestra la tabla siguiente.
Opcin Crear Alterar Informar Borrar Salir Finalidad Le permite definir la estructura de una tabla nueva Instrucciones Creacin o modificacin de una tabla en la pgina 5-3
Le permite modificar la estructura de una Creacin o modificacin de tabla existente una tabla en la pgina 5-3 Visualiza informacin acerca de la estructura de una tabla Suprime una tabla de la base de datos Vuelve al men principal de DB-Access Visualizacin de informacin de tabla en la pgina 5-36 Eliminacin de una tabla en la pgina 5-48 ninguna
En la solicitud, escriba el nombre de la nueva tabla y pulse INTRO. Puede asignar cualquier nombre a la tabla, a condicin de que siga las directrices de sintaxis para la denominacin de objetos de base de datos que se describe en la publicacin IBM Informix: Guide to SQL Syntax. Despus de entrar el nuevo nombre de tabla, aparecer el men CREARE TABLA, como muestra la Figura 5-3.
5-3
CREAR TABLA clients: Agregar Modificar Borrar Pantalla Agregar columnas a la tabla antes de la lnea remarcada.
---- Pgina 1 de 1 ---- mydata@mydbserv ------------ Pulse CTRL-W para Ayuda ----Nombre columna Tipo Longitud ndice Nulos
Despus de la solicitud, entre el nombre de la tabla que desea modificar o utilice las teclas de flecha para resaltar el nombre de tabla en la lista. Despus de pulsar INTRO, aparecern el men ALTERAR TABLA y el esquema de tabla, como muestra la Figura 5-5.
ALTERAR TABLA clients: Agregar Modificar Borrar Pantalla Agregar columnas a la tabla antes de la lnea remarcada. Opc_tabla Restricciones Salir
---- Pgina 1 de 1 ---- mydata@mydbserv ------------ Pulse CTRL-W para Ayuda ----Nombre columna customer_num fname lname company Tipo Serial Char Char Char Longitud 101 15 15 20 ndice nico Nulos No S S S
Importante: Deber tener el privilegio de modificacin (Alter) para modificar satisfactoriamente una tabla. Sin el privilegio, puede utilizar los mens de la pantalla ALTERAR TABLA, pero se producir un error cuando intente seleccionar Construir-nueva-tabla en
5-4
pantalla SALIR. Si desea obtener referencias que explican el privilegio de modificacin (Alter) y otros privilegios a nivel de tabla, consulte la pgina 5-2. Para utilizar la sentencia LOAD a fin de insertar datos en una tabla, deber tener privilegios de insercin (Insert) y seleccin (Select) para la tabla. Necesita el privilegio Select porque DBAccess debe leer la informacin de SELECT acerca de las columnas antes de insertar datos en la tabla. Si no tiene el privilegio Select, el mandato LOAD fallar y obtendr un mensaje de error -272, Sin permiso SELECT. Si tiene el privilegio Select pero no tiene el privilegio Insert, obtendr un error -275, Sin permiso INSERT.
Modificar
Visualiza las columnas que ha Modificacin de columnas definido con la opcin Agregar para (opcin Modificar) en la pgina que pueda modificar la estructura 5-12 de columnas antes de crear la tabla Elimina una columna existente de la tabla Visualiza la siguiente pantalla de definiciones de columna en el Editor de esquemas Supresin de columnas (opcin Borrar) en la pgina 5-13 ninguna
Borrar Pantalla
Opc_tabla
Visualiza y le permite seleccionar Organizacin del espacios de almacenamiento para almacenamiento y bloqueo una tabla nueva. Visualiza opciones (Opc_tablas) en la pgina 5-14 desde las que puede establecer una estrategia de fragmentacin para una tabla nueva. Le permite establecer los tamaos de extensin y la modalidad de bloqueo para una tabla nueva. Aade o suprime los ID de fila para una tabla fragmentada existente
5-5
Opcin Restricciones
Finalidad Le permite definir restricciones de clave primaria, clave externa, de comprobacin y exclusivas. Le permite establecer valores de columna por omisin
Instrucciones Definicin de restricciones en la pgina 5-26 Definicin de valores por omisin en la pgina 5-32
Salir
Crea, vuelve a crear o descarta el Creacin de la tabla (opcin esquema y la estructura que ha Salir) en la pgina 5-12 descrito con las dems opciones y, a continuacin, le devuelve al men TABLA
Importante: Deber utilizar la BARRA ESPACIADORA para moverse entre las opciones de men porque las teclas de flecha controlan el movimiento del cursor en el Editor de esquemas. Para salir del men CREAR TABLA o del men ALTERAR TABLA y volver al men TABLA sin crear o modificar ninguna tabla, pulse la tecla de Interrupcin.
5-6
Puede cambiar o ignorar cualquier campo de entrada de una lnea antes de moverse a la lnea siguiente de uno de los modos siguientes: v Utilice la tecla de flecha izquierda pare retroceder un campo que ha pasado en la lnea actual. v Pulse la tecla de Interrupcin para cancelar una solicitud sin insertar un valor en el campo actual (resaltado). Despus de mover el cursor a otra lnea, deber utilizar la opcin Modificar del men CREAR TABLA para cambiar la entrada, como describe el apartado Modificacin de columnas (opcin Modificar) en la pgina 5-12. Nombre de columna La opcin Agregar del men CREAR TABLA (o ALTERAR TABLA) sita el cursor en una lnea vaca y visualiza la solicitud AGREGAR NOMBRE DE COLUMNA. Escriba el nombre de la columna despus de la solicitud AGREGAR NOMBRE DE COLUMNA y pulse INTRO. Puede asignar cualquier nombre, a condicin de que siga las directrices para la sintaxis de identificador que se describen en la publicacin IBM Informix: Guide to SQL Syntax. DBAccess entra el nombre especificado bajo Nombre columna, como muestra la Figura 5-6.
AGREGAR NOMBRE DE COLUMNA >> Introduzca nombre de columna. INTRO lo aade. INTERRUPT vuelve al men CREAR/ALTERAR. ---- Pgina 1 de 1 ---- mydata@mydbserv ---------- Pulse CTRL-W para Ayuda ---Nombre columna customer_num Tipo Longitud ndice Nulos
Figura 5-6. Pantalla AGREGAR NOMBRE DE COLUMNA con nombre de columna entrado
Tipo de datos de columna El men AGREGAR TIPO visualiza diversos tipos de datos, como muestra la Figura 5-7.
AGREGAR TIPO clients : Char Numeric Serial Date Money date-Time ... Permite cualquier combinacin de letras, nmeros y puntuacin. ---- Pgina 1 de 1 ----- mydata@mydbserv ---------- Pulse CTRL-W para Ayuda ---Nombre columna customer_num Tipo Longitud ndice Nulos
Figura 5-7. Men AGREGAR TIPO para definir tipos de datos de columna
5-7
Si desea seleccionar el tipo de datos para la columna, escriba la primera letra en maysculas del tipo de datos, utilizando letras maysculas o minsculas o la BARRA ESPACIADORA para resaltarlo y, a continuacin, pulse INTRO. Importante: Utilice la barra espaciadora para moverse hasta la eleccin. Utilice las teclas de flecha para controlar el movimiento del cursor en la parte inferior de la pantalla. Dynamic Server El men CREAR TABLA proporciona opciones para los tipos de datos incorporados. Para definir una columna con uno de los tipos de datos ampliados como, por ejemplo, objetos de gran tamao inteligentes, tipos de datos (opaque) definidos por el usuario o un tipo de datos de coleccin (collection), utilice el men SQL para entrar y ejecutar una sentencia CREATE TABLE. Fin de Dynamic Server Si selecciona una de las categoras de tipo de datos siguientes en el men AGREGAR TIPO, DBAccess visualiza uno o dos submens para dicha categora.
Categora AGREGAR TIPO Numeric Submen Tipo de datos Integer Smallint Decimal Float Smallfloat o Float Submen adicional
Char
Longitud variable
Varchar
Text o Byte
5-8
Consejo: Aunque algunos tipos de datos descritos anteriormente no se incluyen en la modalidad de men, puede utilizar cualquier tipo de datos en modalidad interactiva no de men. Datos de tipo carcter de entorno local: Si utiliza datos de tipo carcter en un entorno local por omisin, seleccione Char para datos de longitud fija o Varchar si la tabla va a tener entradas de longitud variable en dicha columna. Soporte de idioma global (Global Language Support) Si utiliza un entorno local no por omisin, seleccione Nchar para longitud fija o Nvarchar para longitud variable. Fin de Soporte de idioma global (Global Language Support) Ubicacin de almacenamiento de objetos grandes: Si selecciona el tipo de datos TEXTO DE LONGITUD VARIABLE o BYTE, realice una de las acciones siguientes para indicar donde deben residir dichos datos de objeto grande: v Seleccione Tabla para almacenar los datos completos directamente en la columna. Extended Parallel Server Seleccione siempre Tabla para bases de datos que residen en Extended Parallel Server. Fin de Extended Parallel Server v Seleccione Blobspace para almacenar los datos TEXT o BYTE reales en un espacio de objeto grande (blobspace). Entonces la columna de tabla contendr la ubicacin del espacio de blob. DBAccess visualiza la pantalla SELECCIONAR BLOBSPACE, como muestra la Figura 5-8. Utilice las teclas de flecha para elegir un espacio de blob en la lista alfabtica o escriba el nombre del espacio de blob en la parte superior de la pantalla.
SELECCIONAR BLOBSPACE >> Elija un blobspace con las flechas o introduzca el nombre y pulse Intro ----- Pgina 1 de 1 ------ mydata@mydbserv ------- Pulse CTRL-W para Ayuda -----cust_blob
Figura 5-8. Pantalla SELECCIONAR BLOBSPACE para almacenar datos de longitud variable
Longitud o rango de datos Si selecciona cualquiera de los tipos de datos siguientes para la columna, aparecer una pantalla AGREGAR nueva. Entre la informacin apropiada en el campo Longitud.
Captulo 5. Opcin Tabla
5-9
Tipo de datos Longitud o rango Char Nchar Numeric Entre la longitud (el valor por omisin es 20). Entre la longitud (el valor por omisin es 20). Para el formato de coma fija del tipo DECIMAL, entre la precisin y la escala (el valor por omisin es 16, 2). Para el formato de coma flotante del tipo DECIMAL, entre slo la precisin. Entre el nmero inicial (el valor por omisin es 1). Especifique una longitud (el valor por omisin es 16, 2). Especifique calificadores de fecha y hora de primero a ltimo. Especifique calificadores de intervalo de primero a ltimo. Especifique una longitud mxima (de 1 a 255 bytes) y un espacio mnimo (de 0 a 255 bytes). Especifique una longitud mxima (de 1 a 255 bytes) y un espacio mnimo (de 0 a 255 bytes).
ndice de columnas DBAccess slo puede crear un ndice de columnas sin clster de B-tree ascendente. Seleccione la opcin S para crear este tipo de ndice con el men AGREGAR NDICE, como muestra la Figura 5-9.
AGREGAR NDICE clients : S No Especifica que esta columna No tendr un ndice. ----- Pgina 1 de 1 ----- mydata@mydbserv ----------- Pulse CTRL-W para Ayuda ---Nombre columna customer_num Tipo Serial Longitud 101 ndice Nulos
DBAccess visualiza una pantalla AGREGAR DUPLICADOS. Pulse INTRO o la tecla S para permitir valores duplicados y aparecer la palabra Dups en el campo ndice. Pulse la tecla N para impedir valores duplicados. Aparecer la palabra nico en el campo ndice. DBAccess visualiza la pantalla AGREGAR PORCENTAJE DE FACTOR DE LLENADO, como muestra la Figura 5-10. Si no desea indexar los valores de esta columna o si desea cualquier otro tipo de ndice, por ejemplo un ndice R-tree, seleccione la opcin No. Un ndice R-tree deber crearse directamente con SQL.
5-10
Factor de llenado de ndice de columnas Utilice la pantalla AGREGAR PORCENTAJE DE FACTOR DE LLENADO, como muestra la Figura 5-10, para establecer el porcentaje de factor de llenado cuando cree un ndice en una columna individual. La columna de ndice contiene el factor de llenado y Unique o Dups abreviado como U o D.
AGREGAR PORCENTAJE DE FACTOR DE LLENADO >> Introduzca el porcentaje de factor de llenado. INTRO lo aade. ----- Pgina 1 de 1 -------personnel ------------- Pulse CTRL-W para Ayuda ----Nombre columna empl_num 70% No last_name insurance ss_num Tipo Integer Char Integer Integer 20 Longitud ndice Nulos U D 90% Dups Unique No S No
Importante: Slo puede establecer un valor de factor de llenado cuando cree un ndice nuevo. Puede modificar el factor de llenado mediante la opcin Modificar del men CREAR TABLA. Sin embargo, no puede modificarlo mediante el men ALTERAR TABLA despus de que se haya creado la tabla para el ndice. Entre cualquier valor positivo hasta un mximo de 100. Un valor inferior a 1 o superior a 100 producir un error. Si pulsa INTRO sin entrar ningn valor, el ndice tendr el porcentaje de factor de llenado establecido en el archivo ONCONFIG del servidor de bases de datos. Si ONCONFIG no tiene ningn valor de factor de llenado, el ndice tendr el valor de factor de llenado por omisin del 90 por ciento. Permiso de valor nulo Especifique si la columna permite valores nulos en el men AGREGAR NULLS, como muestra la Figura 5-11.
AGREGAR NULLS clients : S No Permite valores nulos en esta columna. ---- Pgina 1 de 1 ----- mydata@mydbserv ---------- Pulse CTRL-W para Ayuda ---Nombre columna customer_num Tipo Serial Longitud 101 ndice Nulos Unique
Seleccione S para permitir valores nulos en la columna o No para forzar que la columna tenga siempre un valor no nulo.
5-11
Para aadir otra definicin de columna a la tabla o volver al men CREAR TABLA, pulse la tecla de Interrupcin, una tecla de flecha o INTRO.
Para crear la tabla que contiene las columnas visualizadas y volver al men TABLA, seleccione Construir-nueva-tabla. Para volver al men TABLA sin guardar la definicin de tabla nueva o modificada, seleccione Abandonar-nueva-tabla.
5-12
MODIFICAR NOMBRE DE COLUMNA Nombre de columna en la pgina 5-7 MODIFICAR TIPO MODIFICAR LONGITUD MODIFICAR NDICE Tipo de datos de columna en la pgina 5-7 Longitud o rango de datos en la pgina 5-9 ndice de columnas en la pgina 5-10
MODIFICAR NULOS Permiso de valor nulo en la pgina 5-11 5. Mueva el resaltado al campo siguiente y repita el proceso. 6. Seleccione Salir para salir de la pantalla despus de haber elegido crear la tabla o descartar el esquema, como muestra la Figura 5-12 en la pgina 5-12. Para salir de una pantalla o un men Modificar sin realizar ningn cambio, pulse la tecla de Interrupcin en cualquier momento.
Seleccione S en el men BORRAR para suprimir la lnea resaltada actualmente en el Editor de esquemas; seleccione No para conservar la lnea.
5-13
Almacenamiento Visualiza los espacios DB y le permite asignar un espacio DB a la tabla actual. Le permite definir una estrategia de fragmentacin para la tabla actual tamao_eXtensin permite especificar el tamao de Le extensin inicial de la tabla tamao_Prximo permite especificar el siguiente Le tamao de extensin
modo_Bloqueo Le permite seleccionar Pgina o Fila Determinacin de la modalidad como la modalidad de bloqueo de bloqueo en la pgina 5-25 Salir Vuelve al men anterior ninguna
Para obtener ayuda al establecer los valores de Opc_tabla, por ejemplo los espacios DB, la estrategia de fragmentacin, los tamaos de extensin y la modalidad de bloqueo, consulte la publicacin IBM Informix: Administrator's Guide y la publicacin IBM Informix: Performance Guide. Seleccin de espacios DB Para visualizar el men ALMACENAMIENTO, como muestra la Figura 5-15, seleccione la opcin Almacenamiento en el men OPC_TABLA.
5-14
Salir
----- Pgina 1 de 1 ----- mydata@mydbserv -------- Pulse CTRL-W para Ayuda ----
Figura 5-15. Men ALMACENAMIENTO para almacenar datos de datos y definir estrategia de fragmentacin
Para visualizar la pantalla SELECCIONAR DBSPACE, como muestra la Figura 5-16, seleccione Dbspace en el men ALMACENAMIENTO. Utilice las teclas de flecha para resaltar un espacio DB en la lista de espacios DB de la base de datos actual y, a continuacin, pulse INTRO.
SELECCIONAR DBSPACE >> Elija un dbspace con las flechas de cursor o introduzca un nombre y pulse Intro. ----- Pgina 1 de 1 ---- mydata@mydbserv --------- Pulse CTRL-W para Ayuda ---rootdbs pers_dbs empl_dbs
Seleccione Fragmentar para configurar la estrategia de fragmentacin en una serie de mens adicionales. Si desea obtener instrucciones, consulte el apartado Fragmentacin de una tabla nueva en la pgina 5-15 o el apartado Modificacin de la fragmentacin para una tabla existente en la pgina 5-19. Fragmentacin de una tabla nueva Para organizar la fragmentacin de una tabla nueva, visualice el men FRAGMENTAR, como muestra la Figura 5-17. Llegar a este men realizando los pasos siguientes: 1. 2. 3. 4. 5. En En En En En el men principal, seleccione Tabla. el men TABLA, seleccione Crear. CREAR TABLA, seleccione Opc_tabla. el men OPC_TABLA, seleccione Almacenamiento. el men ALMACENAMIENTO, seleccione Fragmentar.
FRAGMENTAR new_acct: Round_robin Expresin IDs de fila Salir Selecciona y define una estrategia round robin para la fragmentacin. ----- Pgina 1 de 1 ----- mydata@mydbserv -------- Pulse CTRL-W para Ayuda ----
Seleccione la estrategia que desee en el men FRAGMENTAR, como muestra la tabla siguiente.
Captulo 5. Opcin Tabla
5-15
Finalidad Selecciona una estrategia en rueda para la fragmentacin Selecciona una estrategia de expresin para la fragmentacin
Instrucciones Figura 5-30 en la pgina 5-23 Configuracin de estrategia de expresin en la pgina 5-17
Aade una columna que contiene Pulse la tecla i para habilitar ID de fila a una tabla explcitamente el acceso por ID fragmentada (el servidor de bases de fila de datos no asigna automticamente los ID de fila cuando se insertan filas en una tabla fragmentada.) Sale del men FRAGMENTAR y vuelve al men ALMACENAMIENTO Figura 5-15 en la pgina 5-15
Salir
DBAccess no tiene ninguna opcin de men FRAGMENTAR para la fragmentacin hash o hbrida. Si desea este tipo de estrategia, utilice el men SQL para entrar y ejecutar la sentencia CREATE TABLE o ALTER TABLE. Extended Parallel Server Extended Parallel Server no soporta ID de fila para tablas fragmentadas. Fin de Extended Parallel Server Configuracin en rueda: Para visualizar el men ROUND_ROBIN, como muestra la Figura 5-18, seleccione la opcin Round_robin en el men FRAGMENTAR.
ROUND_ROBIN new_acct: Agregar Modificar Borrar Pantalla Salir Agrega un dbspace a la estrategia de fragmentacin sobre la lnea con el remarcado. ----- Pgina 1 de 1 ----- mydata@mydbserv ----------- Pulse CTRL-W para Ayuda ---Nombre Dbspace dbspace1 dbspace2
5-16
Agregar
Visualiza espacios DB para que pueda aadir un nuevo espacio DB al espacio de fragmentos en rueda asignados a la tabla actual Le permite volver a definir la estrategia de fragmentacin para el espacio DB resaltado Suprime el espacio DB resaltado de la estrategia existente, pero no suprime el espacio DB del servidor de bases de datos Desplaza la pantalla para visualizar un mayor nmero de los espacios DB disponibles Vuelve al men FRAGMENTAR
Utilice las teclas de flecha para resaltar un espacio DB de la lista en la pantalla SELECCIONAR DBSPACE, como muestra la Figura 5-16 en la pgina 5-15, y pulse INTRO. Si intenta aadir un espacio DB que ya forma parte de otra estrategia, aparecer un mensaje de error. Cuando vuelva al men ROUND_ROBIN, la pantalla visualizar todos los espacios DB elegidos actualmente para la estrategia. Configuracin de estrategia de expresin: Para visualizar el men EXPRESIN, como muestra la Figura 5-19, seleccione la opcin eXpresin en el men FRAGMENTAR.
EXPRESIN new_acct: Agregar Modificar Aade una definicin de estrategia. Borrar Pantalla Salir
----- Pgina 1 de 1 ----- mydata@mydbserv -------- Pulse CTRL-W para Ayuda ---Nombre Dbspace Expresin dbspace1 field1 <100 dbspace2 field1 >=100 y field1 <200 dbspace3 remainder
El men EXPRESIN tiene las opciones siguientes. Opcin Agregar Finalidad Aade un espacio DB nuevo a los que contendrn fragmentos de esta tabla, de acuerdo con la estrategia de fragmentacin de expresin Modifica el espacio DB o la expresin asociada a dicho espacio DB
Modificar
5-17
Borrar
Suprime el espacio DB resaltado y la expresin de la estrategia existente, pero no suprime el espacio DB del servidor de bases de datos Desplaza la pantalla para visualizar un mayor nmero de los espacios DB disponibles Vuelve al men FRAGMENTAR
Pantalla Salir
Importante: DBAccess no realiza la validacin de datos en la expresin de la estrategia. La opcin Agregar del men EXPRESIN visualiza la pantalla SELECCIONAR DBSPACE, como muestra la Figura 5-16 en la pgina 5-15. Utilice las teclas de flecha para resaltar un espacio DB de la lista y pulse INTRO. Si intenta aadir un espacio DB que ya forma parte de otra estrategia, aparecer un mensaje de error. Despus de seleccionar un espacio DB, aparecer el men EDITAR EXPRESIN, como muestra la Figura 5-20. Desde este men puede entrar una expresin que determine si un registro determinado pertenece al espacio DB resaltado.
EDITAR EXPRESIN new_acct: Nueva Modificar U-edit Salir Introduce una nueva expresin que determinar dnde se almacenar un registro. ----- Pgina 1 de 1 ----- mydata@mydbserv --------- Pulse CTRL-W para Ayuda ---Nombre Dbspace Expresin dbspace1 dbspace2 dbspace3 field1<100 field1>=100 y field1<200 remainder
El men EDITAR EXPRESIN tiene las opciones siguientes. Opcin Nueva Modificar U-edit Salir Finalidad Visualiza la pantalla del editor de SQL en blanco para que pueda entrar una expresin nueva Visualiza la expresin actual en la pantalla del editor de SQL para que pueda modificar la expresin Visualiza la expresin actual en el editor del sistema para que pueda modificar la expresin Vuelve al men EXPRESIN
5-18
Despus de salir del editor, DBAccess visualiza el men CONFIRMAR CAMBIOS, como muestra la Figura 5-21.
CONFIRMAR CAMBIOS dbspace1: Graba los cambios. GRABAR ABANDONAR
Para guardar las ediciones de la expresin, pulse INTRO. Para descartar las ediciones de la expresin, seleccione ABANDONAR. Volver al men EXPRESIN. Modificacin de la fragmentacin para una tabla existente Si est modificando una tabla, organice o elimine la fragmentacin con el men ALTERAR FRAGMENTO. Para llegar al men ALTERAR FRAGMENTO: v En el men principal, seleccione Tabla. v En el men TABLA, seleccione Alterar. v Seleccione la opcin Opc_tabla en el men ALTERAR TABLA. v Seleccione la opcin Almacenamiento en el men OPC_TABLA. v Seleccione la opcin Fragmentar en el men ALMACENAMIENTO. La Figura 5-22 muestra cmo visualiza el men ALTERAR FRAGMENTO una tabla con una estrategia de fragmentacin en rueda. La Figura 5-23 muestra cmo visualiza el men ALTERAR FRAGMENTO una tabla con una estrategia de fragmentacin basada en expresin.
ALTERAR FRAGMENTO - new_acct: Agregar Borrar Pantalla Inicializar Unir Separar Salir Aade al final de la lista un nuevo dbspace. ----- Pgina 1 de 1 ---- newstores@mydbserv ------- Pulse CTRL-W para Ayuda --Nombre Dbspace dbspace1 dbspace2 dbspace3
5-19
ALTERAR FRAGMENTO - new_acct: Agregar Modificar Borrar Pantalla Inicializar Unir Separar Salir Aade una expresin a la estrategia de fragmentacin por encima de la lnea con el resaltado. ----- Pgina 1 de 1 ----- newstores@mydbserv --------- Pulse CTRL-W para Ayuda ---Nombre Dbspace Expresin dbspace1 field1 <100 dbspace2 field1 >=100 y field1 <200 dbspace3 remainder
Pantalla
Inicializar Describe el esquema de Fragmentacin de una tabla fragmentacin (si existe) de cualquier existente en la pgina 5-23 tabla existente y le permite cambiar la estrategia, unir fragmentos, separar fragmentos o eliminar la fragmentacin Unir Une una o ms tablas a la tabla Unin de un espacio DB en la actual, modifica o suprime una unin pgina 5-21 seleccionada Separa registros de la tabla actual de un espacio DB especfico y crea una tabla nueva con dichos registros Vuelve al men OPC_TABLA Separacin de un espacio DB en la pgina 5-22 ninguna
Separar
Salir
Importante: Slo puede ejecutar una opcin en un men ALTERAR FRAGMENTO y sta slo se puede aplicar una vez a la estrategia actual. Por ejemplo, slo puede aadir un espacio DB a una estrategia en rueda y no puede suprimir un espacio DB durante la misma sesin ALTERAR TABLA.
5-20
Unin de un espacio DB Seleccione la opcin Unir del men de estrategia de expresin ALTERAR FRAGMENTO y aparecer el men UNIR TABLAS. La Figura 5-24 muestra el men UNIR TABLAS para una tabla que tiene fragmentacin de expresin. La versin en rueda de esta pantalla slo muestra el nombre de tabla para cada fragmento.
UNIR TABLAS new_acct: Agregar Modificar Borrar Aade una nueva tabla a la estrategia de fragmentacin. Pantalla Salir
---- Pgina 1 de 1 ---- newstores@mydbserv -------- Pulse CTRL-W para Ayuda ---Nombre tabla acct cur_acct Expresin field1 <100 field1 >=100 Posicin BEFORE Dbspace dbspace1
Seleccione Agregar en el men UNIR TABLAS para empezar a unir un fragmento. En la pantalla SELECCIONAR TABLA DE UNIN, resalte o escriba el nombre de tabla que desea y pulse INTRO, como muestra la Figura 5-25.
SELECCIONAR TABLA DE UNIN >> Elija una tabla con las teclas de cursor o introduzca el nombre y pulse Intro. ---- Pgina 1 de 1 ---- newstores@mydbserv -------- Pulse CTRL-W para Ayuda ---acct cur_acct myacct
Si la tabla utiliza la estrategia en rueda, el nuevo fragmento o los nuevos fragmentos resultantes se colocarn al final de la estrategia de fragmentacin y volver el men ALTERAR FRAGMENTO. Si la tabla utiliza la estrategia de expresin, realice los pasos siguientes: 1. Despus de seleccionar una tabla, aparecer el men EDITAR EXPRESIN. Consulte la Figura 5-20 en la pgina 5-18. 2. Cuando salga del men EDITAR EXPRESIN, aparecer el men AGREGAR DEFINIR POSICIN DE UNIN, como muestra la Figura 5-26.
5-21
AGREGAR DEFINIR POSICIN DE UNIN acct: Anterior Posterior Ninguna Definir una posicin para un fragmento de unin antes de un dbspace. ----- Pgina 1 de 1 ---- newstores@mydbserv -------- Pulse CTRL-W para Ayuda ----
v Seleccione Anterior para unir el nuevo fragmento antes de un espacio DB que seleccionar en el paso siguiente. v Seleccione Posterior para unir el nuevo fragmento despus del espacio DB que seleccionar en el paso siguiente. v Seleccione Ninguna para unir el nuevo fragmento en la posicin por omisin. 3. Si selecciona Anterior o Posterior como la posicin de unin, aparecer la pantalla SELECCIONAR DBSPACE, como muestra la Figura 5-27. En ella se listan los espacios DB que la estrategia incluye antes de unir el nuevo.
SELECCIONAR DBSPACE >> Elija un dbspace con las flechas de cursor o introduzca un nombre y pulse Intro. ----- Pgina 1 de 1 ---- newstores@mydbserv -------- Pulse CTRL-W para Ayuda --dbspace1 dbspace2 dbspace3
Seleccione el espacio DB antes o despus del cual desea unir el fragmento aadido. Volver a aparecer el men UNIR TABLAS, como muestra la Figura 5-24 en la pgina 5-21, y dicho men muestra los valores para los campos Posicin y Dbspace. Separacin de un espacio DB La opcin Separar del men ALTERAR FRAGMENTO visualiza la pantalla SEPARAR DBSPACE, como muestra la Figura 5-28.
5-22
SEPARAR DBSPACE >> Elija un dbspace con las flechas de cursor o introduzca un nombre y pulse Intro. ----- Pgina 1 de 1 ---- newstores@mydbserv ------- Pulse CTRL-W para Ayuda ---dbspace1 dbspace2 dbspace3
Seleccione el espacio DB cuyos registros desea que se copien en una tabla nueva no fragmentada. Puede seleccionar un espacio DB en la lista o escribir un nombre de espacio DB. Si entra un nombre de espacio DB no vlido, aparecer un mensaje de error. Despus de entrar correctamente un espacio DB en la pantalla SEPARAR DBSPACE, aparecer la pantalla NUEVA TABLA, como muestra la Figura 5-29.
NUEVA TABLA >> Introduzca el nombre que desea asignar a la nueva tabla y pulse Intro. ---- Pgina 1 de 1 ---- newstores@mydbserv -------- Pulse CTRL-W para Ayuda ----
Entre el nombre que desea asignar a la nueva tabla no fragmentada. Esta tabla almacena los registros del espacio DB que ha seleccionado anteriormente mediante la pantalla SEPARAR DBSPACE. En la pantalla aparece el men ALTERAR FRAGMENTO. Fragmentacin de una tabla existente Si una tabla no tiene estrategia de fragmentacin al seleccionar la opcin Fragmentar en el men ALMACENAMIENTO, aparecer el men ALTERAR FRAGMENTO, como muestra la Figura 5-30.
ALTERAR FRAGMENTO - new_acct: Inicializar Define una estrategia de fragmentacin. Unir Salir
----- Pgina 1 de 1 ---- newstores@mydbserv ------- Pulse CTRL-W para Ayuda ----
5-23
El men ALTERAR FRAGMENTO-INICIALIZAR tiene las mismas opciones que el men FRAGMENTAR bajo v Elimina la fragmentacin de una tabla CREAR TABLA. Para obtener v Cambia la estrategia de fragmentacin instrucciones, consulte el para una tabla apartado Fragmentacin de una tabla nueva en la pgina 5-15. Le permite definir una estrategia de fragmentacin y seleccionar las tablas que se deben fragmentar con la nueva estrategia. Esta opcin tiene el mismo efecto que la sentencia siguiente: ALTER FRAGMENT ON TABLE table1... ATTACH table1, table2 Vuelve al men OPC_TABLA El men ALTERAR FRAGMENTO-UNIR ofrece fragmentacin en rueda y de expresin. Para obtener instrucciones sobre ambos tipos de estrategia, consulte el apartado Fragmentacin de una tabla nueva en la pgina 5-15. Ninguna
Unir
Salir
Importante: Slo puede realizar una operacin durante una sesin de ALTERAR FRAGMENTO. Establecimiento del tamao de extensin Al crear una tabla, puede especificar qu cantidad de espacio de disco inicial o qu tamao de extensin inicial se debe reservar para la tabla. Tambin puede especificar el tamao de las extensiones adicionales o de los espacios de la siguiente extensin que el servidor de bases de datos aadir si la extensin inicial se llena. Para especificar un tamao de extensin inicial, seleccione la opcin tamao_eXtensin en el men OPC_TABLA. DBAccess visualiza la pantalla Tamao extensin, como muestra la Figura 5-31. Despus de establecer el tamao de extensin inicial, seleccione la opcin Tamao_prximo en el men OPC_TABLA para visualizar la pantalla Tamao prximo, como muestra la Figura 5-32.
Tamao extensin >> Especificar un tamao de extensin inicial en kilobytes. ----- Pgina 1 de 1 ----- mydata@mydbserv ----------- Pulse CTRL-W para Ayuda ---Nombre columna Tipo Longitud ndice Nulos
5-24
Tamao prximo >> Especificar un tamao de extensin siguiente en kilobytes. ----- Pgina 1 de 1 ----- mydata@mydbserv ---------- Pulse CTRL-W para Ayuda ---Nombre columna Tipo Longitud ndice Nulos
Para seleccionar el tamao de extensin en cualquiera de las dos pantallas, realice una de las acciones siguientes: v Pulse INTRO para aceptar el tamao por omisin de 8 kilobytes. v Escriba un nmero (que representa las unidades en kilobytes) y pulse INTRO. El tamao de extensin mnimo es de 4 kilobytes. Determinacin de la modalidad de bloqueo Al seleccionar la opcin modalidad_Bloqueo en el men OPC_TABLA, DBAccess visualiza el men MODO_BLOQUEO, como muestra la Figura 5-33.
MODO_BLOQUEO clientes: Pgina Fila Salir Bloqueo a nivel de pgina. ste es el valor por defecto. ----- Pgina 1 de 1 ----- mydata@mydbserv ---------- Pulse CTRL-W para Ayuda ---Nombre columna Tipo Longitud ndice Nulos
El men MODO_BLOQUEO le permite elegir la modalidad a utilizar cuando la base de datos bloquea las filas de una tabla. El men MODO_BLOQUEO tiene las opciones siguientes. Opcin Pgina Fila Salir Finalidad Bloquea la pgina entera en la que reside una fila Bloquea individualmente una fila seleccionada Vuelve al men OPC_TABLA
La fila de una tabla es el objeto ms pequeo que se puede bloquear. Una pgina de disco contiene una o ms filas de una tabla. Para determinar si mejorar el rendimiento bloqueando una pgina de disco en lugar de filas individuales de la pgina, consulte la publicacin IBM Informix: Performance Guide. A no ser que especifique el bloqueo a nivel de fila antes de salir, DBAccess utilizar el valor por omisin (Pgina).
5-25
Adicin o eliminacin de ID de fila Slo puede aadir o suprimir los ID de filas al modificar una tabla existente. Para llegar al men ALTERAR IDs DE FILA: v Seleccione Opc_tabla en el men ALTERAR TABLA. v Seleccione ID de fila en el men OPCIONES DE TABLA. El men ALTERAR IDs DE FILA tiene las opciones siguientes. Opcin Agregar Borrar Ninguno Salir Finalidad Aade una columna con ID de fila a la tabla fragmentada Descarta la columna de ID de fila aadida anteriormente Cancela la seleccin que ha realizado en esta pantalla para que pueda salir sin modificar la tabla Vuelve al men OPC_TABLA
Si selecciona Agregar o Borrar, otro men le solicitar que verifique la seleccin. Seleccione S para ejecutar la adicin (Agregar) o la eliminacin (Borrar); seleccione No para cancelar la adicin o la eliminacin.
Definicin de restricciones
Puede utilizar el Editor de esquemas de DBAccess para definir restricciones para las columnas de una tabla especificada. Puede definir restricciones de clave primaria, de clave externa, de comprobacin a nivel de columna y a nivel de tabla y exclusivas, as como aadir y modificar los valores por omisin de columna. Si selecciona la opcin Restricciones en el men CREAR TABLA, aparecer el men RESTRICCIONES, como muestra la Figura 5-34.
RESTRICCIONES - mytab: Primaria Externa Verificar nica Por defecto Salir Define una restriccin clave primaria. -----------------mydata@mydbserv------a-------- Pulse CTRL-W para Ayuda --------
El men RESTRICCIONES tiene las opciones siguientes. Opcin Primaria Externa Verificar Finalidad Lista las columnas que forman la tabla para que pueda elegir la columna o las columnas que componen la clave primaria Afirma una relacin de clave externa para una columna Le permite especificar valores vlidos para una columna y fuerza la validacin de la entrada de datos en dicha columna
5-26
Declara que una columna debe contener un valor exclusivo Le permite establecer un valor por omisin para una columna Le devuelve al men CREAR TABLA
Definicin de restricciones de clave primaria Si desea aadir, modificar o suprimir restricciones de clave primaria para la tabla actual, seleccione la opcin Primaria en el men RESTRICCIONES. Aparecer el men CLAVE PRIMARIA, como muestra la Figura 5-35.
CLAVE PRIMARIA mytab: Agregar Modificar Borrar Pantalla Salir Aade un nombre de restriccin o nombre de columna. -------Pgina 1 de 1 --------mydata@mydbserv------- Pulse CTRL-W para Ayuda -------Nombre restriccin constraint1 Nombre columna column1
Al entrar una restriccin primaria, DBAccess valida la entrada verificando la informacin siguiente: v El nombre de columna no est repetido. v No aparezcan ms de 16 nombres de columna en una restriccin. v No se haya asignado a la columna el tipo de datos BYTE o TEXT. Utilice las opciones de men del modo siguiente: v Utilice la opcin Pantalla para desplazarse a cualquiera de las descripciones de restriccin adicionales a fin de poder seleccionar una de ellas para modificarla o suprimirla. v Si seleccione la opcin Agregar para aadir una restriccin referencial de clave primaria, el Editor de esquemas inserta y resalta una lnea nueva en la parte superior de la lista de restricciones. Si mueve el cursor a una lnea de restriccin existente y selecciona la opcin Modificar, podr cambiar el contenido de la lnea. 1. En la solicitud AGREGAR (o MODIFICAR) NOMBRE DE RESTRICCIN, entre un nombre de restriccin. Si pulsa INTRO en este campo sin escribir un nombre de restriccin, el servidor de bases de datos asignar un nombre de restriccin temporal, por ejemplo unassigned1, unassigned2, etc. Este nombre de restriccin temporal existir hasta que lo modifique o se cree o descarte la tabla. El servidor de bases de datos asigna un nombre de restriccin permanente en el momento en que se crea la tabla. 2. En la solicitud AGREGAR (o MODIFICAR) NOMBRE DE COLUMNA, entre un nombre de columna.
5-27
v Seleccione Borrar para eliminar la restriccin que indica el resaltado. Si el campo resaltado es Nombre de restriccin, se suprimirn todas las columnas asociadas con dicha restriccin. Se eliminan las lneas y se cierran los espacios vacos en la pantalla. Definicin de restricciones de clave externa Si desea crear, modificar o suprimir restricciones de clave externa para la tabla actual, seleccione la opcin Externa en el men RESTRICCIONES. Aparecer el men CLAVE EXTERNA, como muestra la Figura 5-36.
CLAVE EXTERNA mytab: Agregar Modificar Borrar Pantalla Salir Aade un nombre de restriccin o un par de columnas referenciantes/referenciadas. ------Pgina 1 de 1 -------mydata@mydbserv------ Pulse CTRL-W para Ayuda -------Restriccin unassigned0 column2 column3 Col. referenciante column1 Tabla referenciada table2 Col. referenciada column1 CD S
column2 column3
Utilice las opciones de men del modo siguiente: v Utilice la opcin Pantalla para desplazar las descripciones de restriccin adicionales en la pantalla a fin de poder seleccionar una de ellas para modificarla o suprimirla. v Seleccione la opcin Agregar para especificar el nombre de restriccin, la tabla referenciada y las supresiones en cascada o bien para aadir a la restriccin uno o ms pares de columnas que hacen referencia y a las que se hace referencia. 1. En la solicitud AGREGAR NOMBRE DE RESTRICCIN, entre un nombre de restriccin. Si pulsa INTRO en este campo sin escribir un nombre de restriccin, DBAccess asigna un nombre de restriccin temporal. El servidor de bases de datos asigna un nombre permanente a la restriccin cuando sta se crea. 2. En la solicitud AGREGAR NOMBRE DE COLUMNA, entre el nombre de la columna que hace la referencia. 3. En la solicitud AGREGAR TABLA REFERENCIADA, entre el nombre de la tabla a la que se hace referencia. 4. En la segunda solicitud AGREGAR NOMBRE DE COLUMNA, entre el nombre de la columna a la que se hace referencia. 5. Cuando el campo CD (Supresiones en cascada) es el campo actual, aparece el men AGREGAR ACTIVAR ELIMINACIN EN CASCADA, como muestra la Figura 5-37.
5-28
No
-------- Pgina 1 de 1 --------mydata@mydbserv------ Pulse CTRL-W para Ayuda ----Restriccin cons1 Col. referenciante col1 Tabla referenciada yourtab Col. referenciada col6 N CD
Seleccione S para habilitar las supresiones en cascada. Cuando se suprime un registro al que se hace referencia (padre), tambin se suprimen todos los correspondientes registros (hijo) que hacen referencia. (La opcin S es equivalente a la opcin ON DELETE CASCADE de la clusula REFERENCES de la sentencia CREATE TABLE.) Seleccione No para evitar las supresiones en cascada. No se puede suprimir una columna (padre) a la que se hace referencia si existen registros (hijo) que hacen la referencia. Para obtener una descripcin detallada de la integridad referencial y de las supresiones en cascada, consulte la sentencia CREATE TABLE en la publicacin IBM Informix: Guide to SQL Syntax. Cuando haya completado la entrada de supresiones en cascada, el cursor volver al campo Restriccin. Entre otra restriccin o pulse la tecla de Interrupcin para volver a la lnea superior del men CLAVE EXTERNA. v Mueva el cursor hasta una lnea de restriccin existente y seleccione la opcin Modificar para cambiar el contenido de la lnea. Puede modificar la informacin de Restriccin, Columna referenciante y Tabla referenciada. Cambie la entrada del campo y pulse INTRO para modificarla o pulse la tecla de Interrupcin si no desea modificar una restriccin externa. v La opcin Borrar visualiza una lista de restricciones de clave externa y le solicita que seleccione una para suprimirla. Si el campo actual (resaltado) es Restriccin, se suprime la restriccin entera. Si est resaltado cualquier otro campo, slo se suprimir el par al que se hace referencia y que hace referencia. El valor por omisin es S. Pulse INTRO para suprimir la restriccin resaltada. Mueva el cursor para resaltar No si no desea suprimir dicha restriccin. Volver al men CLAVE EXTERNA. Definicin de restricciones de comprobacin El men RESTRICCIN DE VERIFICACIN le permite aadir, modificar o suprimir una restriccin de comprobacin para la tabla actual. Seleccione la
5-29
opcin Verificar en el men RESTRICCIONES para acceder al men RESTRICCIN DE VERIFICACIN, como muestra la Figura 5-38.
RESTRICCIN DE VERIFICACIN mytab: Agregar Agregar una restriccin de verificacin. Modificar Borrar Pantalla Salir
-----------------mydata@mydbserv------------- Pulse CTRL-W para Ayuda --------Nombre restriccin cons2 cons3 cons4 Valor (column1 > (c ... column2 < col ... column3 > 100
El men RESTRICCIN DE VERIFICACIN visualiza cualquier restriccin de comprobacin aadida anteriormente. Los 36 primeros caracteres del valor de comprobacin aparecen en el men RESTRICCIN DE VERIFICACIN. Utilice las opciones del men RESTRICCIN DE VERIFICACIN como se indica a continuacin: v La opcin Borrar le permite suprimir la restriccin de comprobacin actual. El valor por omisin es S. Pulse INTRO para suprimir la restriccin resaltada. Mueva el cursor para resaltar No y, a continuacin, pulse INTRO si no desea suprimir dicha restriccin. Volver al men RESTRICCIN DE VERIFICACIN. v Seleccione la opcin Agregar para aadir una restriccin de comprobacin para la tabla y entre el nombre y el valor de la restriccin. 1. En la solicitud AGREGAR (o MODIFICAR) NOMBRE DE RESTRICCIN, entre un nombre. Si pulsa INTRO en este campo sin especificar un valor, se asignar un nombre de restriccin temporal y ste existir hasta que se cree o se descarte la tabla. 2. En el men AGREGAR (o MODIFICAR) VALOR DE COMPROBACIN, como muestra la Figura 5-39, seleccione el editor de SQL o especifique otro editor para entrar el valor de restriccin de comprobacin.
AGREGAR VALOR DE COMPROBACIN cons99: Nuevo Modificar U-edit Salir Introduzca un nuevo valor de comprobacin utilizando el editor SQL. ----------------mydata@mydbserv------------- Pulse CTRL-W para Ayuda --------
El men AGREGAR VALOR DE COMPROBACIN tiene las opciones siguientes. Opcin Finalidad
5-30
Visualiza la pantalla del editor de SQL en blanco para que pueda entrar un nuevo valor de comprobacin Visualiza el valor de comprobacin actual en la pantalla del editor de SQL para que pueda modificar el valor Visualiza el valor de comprobacin actual en el editor del sistema para que pueda modificar el valor Vuelve al men RESTRICCIN DE VERIFICACIN
Si sale del men AGREGAR VALOR DE COMPROBACIN o sale sin definir el valor de comprobacin, volver al men RESTRICCIN DE VERIFICACIN. Si ha definido el valor de comprobacin, permanecer en modalidad de adicin, se insertar una lnea nueva, el Nombre de restriccin ser el campo actual y aparecer la solicitud AGREGAR NOMBRE DE RESTRICCIN. Definicin de restricciones exclusivas El men RESTRICCIN NICA le permite aadir, modificar o suprimir una restriccin exclusiva para la tabla actual. Para acceder al men RESTRICCIN NICA, seleccione la opcin nica en el men RESTRICCIONES, como muestra la Figura 5-40.
RESTRICCIN NICA mytab: Agregar Agregar una restriccin nica. Modificar Borrar Pantalla Salir
------------------mydata@mydbserv------------ Pulse CTRL-W para Ayuda --------Nombre restriccin cons2 Nombre columna
cons3
Utilice las opciones del men RESTRICCIN NICA como se indica a continuacin: v Seleccione Pantalla para visualizar la pantalla siguiente de restricciones exclusivas. v Si selecciona la opcin Agregar, el Editor de esquemas aadir una lnea nueva. 1. En la solicitud AGREGAR NOMBRE DE RESTRICCIN, entre un nombre de restriccin. Si pulsa INTRO en este campo sin escribir un nombre, se asignar un nombre de restriccin temporal, que existir hasta que se cree o se descarte la tabla.
5-31
2. En la solicitud AGREGAR NOMBRE DE COLUMNA, entre el nombre de la columna que debe tener un valor exclusivo. Se aadir una lnea nueva y el Nombre de columna seguir siendo el campo actual. v La opcin Modificar le permite modificar el campo Nombre de restriccin o Nombre de columna. Si modifica el campo Nombre de restriccin, aparecer la solicitud MODIFICAR NOMBRE DE RESTRICCIN. Si modifica el campo Nombre de columna, aparecer la solicitud MODIFICAR NOMBRE DE COLUMNA. v Seleccione la opcin Borrar para suprimir el nombre de restriccin o columna donde est ubicado el resaltado. Si suprime un nombre de restriccin, tambin se suprimirn todos los nombres de columna asociados con dicho nombre de restriccin. Importante: No puede modificar restricciones exclusivas despus de crearlas. Para identificar las restricciones exclusivas listadas en el men RESTRICCIN NICA, utilice un asterisco (*) antes del nombre de restriccin. Si intenta modificar una restriccin exclusiva utilizando la opcin Modificar del men RESTRICCIN NICA, aparecer un mensaje de error. Validacin de datos: Cuando se entra una restriccin exclusiva, DBAccess valida la entrada verificando que: v El nombre de columna exista. v El nombre de columna no est repetido. v No existan ms de 16 nombres de columna en una restriccin. v No se haya asignado a la columna el tipo de datos BYTE o TEXT. Definicin de valores por omisin Utilice el men POR DEFECTO para definir valores por omisin para las columnas de una tabla, como muestra la Figura 5-41. Para acceder al men POR DEFECTO, seleccione la opcin por Defecto en el men RESTRICCIONES.
5-32
POR DEFECTO mytab: Agregar Modificar Borrar Pantalla Salir Agregar una columna por defecto. -------Pgina 1 de 1 --------mydata@mydbserv----- Pulse CTRL-W para Ayuda ------Nombre columna column1 column3 column5 column6 column7 column8 Tipo User Null Today Current (Fraction to Fraction (5)) Literal Literal 1200 Valor
El men POR DEFECTO tiene las opciones siguientes. Opcin Agregar Modificar Borrar Pantalla Salir Finalidad Aade un valor por omisin de columna del tipo de datos apropiado Lista un nombre, un tipo de datos y un valor por omisin existentes para que pueda cambiar los atributos por omisin Suprime un valor por omisin de columna Visualiza la siguiente pantalla de valores por omisin Le devuelve al men RESTRICCIONES
Puede ver los 28 primeros caracteres del valor. Para aadir un valor por omisin de columna: 1. Seleccione la opcin Agregar. El Editor de esquemas inserta una lnea nueva en la parte superior de la lista y hace que el Nombre de columna sea el campo actual. 2. En la solicitud AGREGAR NOMBRE DE COLUMNA, entre un valor para el nombre de columna. 3. En el men AGREGAR TIPO POR DEFECTO que muestra la Figura 5-42, defina el valor por omisin de una columna de la tabla actual.
5-33
AGREGAR TIPO POR DEFECTO mytab: Literal Usuario Actual Null Hoy Servidor-basedatos Emplazamiento Asignar un valor literal utilizando el editor SQL o un editor del sistema. ---------------mydata@mydbserv---------------- Pulse CTRL-W para Ayuda ---------
El men AGREGAR TIPO POR DEFECTO tiene las opciones siguientes que le permiten asignar valores por omisin a la columna. Opcin Literal Valor por omisin asignado Valor por omisin de literal entrado en el editor de SQL o en un editor del sistema especificado por el usuario Nombre de conexin del usuario actual Hora del da actual del reloj del sistema Nulo Fecha actual del sistema Nombre de servidor de bases de datos actual
Emplazamiento Nombre de sitio actual v Si selecciona Usuario, Null, Hoy, Servidor-basedatos o Emplazamiento, el sistema asigna dicho valor al tipo por omisin y le devolver al men POR DEFECTO en modalidad de adicin. v Si selecciona Actual como valor por omisin, se toma el calificador de la definicin de columna. v Si entra un valor por omisin y el tipo es DATETIME o INTERVAL, entre slo el valor. El calificador procede de la definicin de columna. v Si selecciona Literal como tipo por omisin, aparece el men AGREGAR VALOR POR DEFECTO, que le permite asignar un literal como valor por omisin. El men AGREGAR VALOR POR DEFECTO le permite aadir o modificar el valor por omisin para una columna de la tabla actual con el editor de SQL o un editor del sistema, como muestra la Figura 5-43.
AGREGAR VALOR POR DEFECTO column7: Nuevo Modificar U-edit Salir Entrar un nuevo valor por defecto utilizando el editor SQL. -----------------mydata@mydbserv------------- Pulse CTRL-W para Ayuda ----------
5-34
Finalidad Visualiza la pantalla del editor de SQL en blanco para que pueda entrar un valor nuevo Visualiza el valor por omisin actual en la pantalla del editor de SQL para que pueda modificar el valor por omisin Visualiza el valor por omisin actual en el editor del sistema para que pueda modificar el valor actual Le devuelve al men AGREGAR VALOR POR DEFECTO
Para modificar el campo de valor, tipo o nombre de columna: 1. Seleccione la opcin Modificar para modificar el campo Nombre de columna, Tipo o Valor donde est ubicado el resaltado. 2. Si resalta un valor, el men MODIFICAR VALOR POR DEFECTO le solicitar que invoque el editor de SQL o el editor del sistema para que pueda escribir sobre el valor por omisin existente o modificar dicho valor. Validacin de datos: Cuando se entra un valor por omisin, DBAccess valida la entrada. El servidor de bases de datos valida el valor de literal y comprueba la informacin siguiente: v El nombre de columna debe existir. v El tipo de columna no puede ser SERIAL. v Si la columna no permite nulos, no puede especificar el tipo por omisin como Null. v Slo puede utilizar el tipo por omisin Actual con un tipo de columna DATETIME. v Slo puede utilizar el tipo por omisin Servidor-basedatos con un tipo de columna de CHAR, NCHAR, VARCHAR o NVARCHAR, que tiene una longitud mnima de 18 caracteres. v Slo puede utilizar el tipo por omisin Emplazamiento con un tipo de columna de CHAR, NCHAR, VARCHAR o NVARCHAR, que tiene una longitud mnima de 18 caracteres. v Slo puede utilizar el tipo por omisin Hoy con un tipo de columna de DATE. v Slo puede utilizar el tipo por omisin Usuario con un tipo de columna de CHAR, NCHAR, VARCHAR o NVARCHAR, que tiene una longitud mnima de 18 caracteres.
5-35
Esta pantalla lista los nombres de las tablas que existen en la base de datos actual. Tenga en cuenta los puntos siguientes: v Si no es el propietario de la tabla, el nombre de tabla lleva como prefijo el nombre del propietario, como en june.clients. v Si la lista de tablas no se ajusta en una pantalla, la ltima entrada son unos puntos suspensivos (...). Utilice las teclas de flecha para resaltar los puntos suspensivos y aparecer la siguiente pgina de nombres de tabla. Soporte de idioma global (Global Language Support) v Si se ha habilitado el Soporte de idioma global, la lista de nombres de tabla se clasificar de acuerdo con las normas de clasificacin de base de datos que se hayan definido al crear la base de datos. De este modo, usuarios diferentes que utilicen secuencias de clasificacin distintas para DBAccess ven los nombres de tabla de la base de datos listados en el mismo orden. Fin de Soporte de idioma global (Global Language Support) Para solicitar informacin acerca de las tablas de un servidor de bases de datos diferente, utilice el formato basedatos@servidor:tabla o basedatos@servidor:propietario.tabla en la solicitud. El ejemplo siguiente solicita informacin sobre la tabla customer que dba ha creado en la base de datos accounts del servidor de bases de datos topend:
INFORMAR SOBRE TABLA >> accounts@topend:dba.customer
5-36
Para salir de la pantalla INFORMAR SOBRE TABLA sin solicitar informacin de tabla, pulse la tecla de Interrupcin. Volver al men TABLA. Puede seleccionar una tabla de uno de los modos siguientes: v Escriba el nombre de tabla y pulse INTRO. Deber utilizar este mtodo e incluir el nombre de va de acceso completo si desea informacin sobre una tabla que no est en la base de datos actual. v Utilice las teclas de flecha para resaltar el nombre de tabla que desea y pulse INTRO. Por ejemplo, para la tabla customer, escriba customer o utilice las teclas de flecha para resaltarla y pulse INTRO. Aparecer el men INFO, con customer en la lnea superior, como muestran la Figura 5-45 y la Figura 5-46.
INFO - customer: Columnas ndices Privilegios Referencias Estado Mostrar los nombres de columna y los tipos de datos para una tabla. ...
Figura 5-45. Men INFO para visualizar informacin de tabla (primera pantalla)
INFO - customer: ... resTricciones Disparador Tabla Fragmentos Salir Men Referencias y las opciones primaria, nica, verificar y por defecto. ------------------ mydata@mydbserv ------------- Pulse CTRL-W para Ayuda ------
Figura 5-46. Men INFO para visualizar informacin de tabla (segunda pantalla)
Lista el tipo de datos por nombre de Visualizacin de informacin de columna e indica qu columnas columna en la pgina 5-38 pueden contener un valor nulo Describe cada ndice definido para una tabla especificada Lista los usuarios que tienen privilegios de seleccin (Select), actualizacin (Update), insercin (Insert), supresin (Delete), ndice (Index) o modificacin (Alter) para la tabla especificada. Visualizacin de informacin de ndice en la pgina 5-41 Visualizacin de privilegios a nivel de tabla en la pgina 5-42
ndices Privilegios
5-37
Opcin Referencias
Finalidad
Instrucciones
Lista los usuarios que tienen el Visualizacin de privilegios de privilegio de referencias (References) referencias en la pgina 5-43 a nivel de tabla para la tabla especificada y los nombres de las columnas a los que los usuarios pueden hacer referencia Lista el nombre de tabla, el propietario, el tamao de fila, el nmero de filas y columnas y la fecha de creacin de la tabla actual ninguna
Estado
resTricciones
Visualiza las restricciones Visualizacin de restricciones referenciales, primarias, exclusivas y de columna y valores por de comprobacin, as como los omisin en la pgina 5-43 valores por omisin para las columnas de la tabla especificada Visualiza informacin de cabecera y cuerpo para un activador especificado Vuelve a visualizar el men INFORMAR SOBRE TABLA para que pueda seleccionar una tabla diferente a fin de examinarla Lista los espacios DB fragmentados asignados a la tabla y, para la fragmentacin basada en expresin, visualiza la expresin asignada a cada espacio DB Vuelve al men TABLA Visualizacin de activadores en la pgina 5-46 ninguna
Disparador
tabla
Fragmentos
Salir
ninguna
Consejo: En el men CREAR TABLA, utilice Opc-tabla para ver informacin de modalidad de bloqueo y extensin o emita una sentencia SELECT para listar la descripcin de tabla en la tabla de catlogo de sistema systables.
5-38
Tipo INTEGER DATETIME YEAR TO MINUTE CHAR(32) CHAR(1) CHAR(240) DATETIME YEAR TO MINUTE CHAR(240)
Nulos no s s s s s s
Tipos de datos de DB-Access Las columnas de la Figura 5-47 muestran que la tabla cust_calls consta de todos los tipos de datos (estndares) incorporados. Los tipos de datos disponibles mediante la jerarqua del men CREAR TABLA son los tipos incorporados. Los tipos incorporados que la opcin Columnas puede visualizar son BOOLEAN, BYTE, CHAR, CHARACTER VARYING, DATE, DATETIME, DECIMAL, FLOAT, INT8, INTEGER, INTERVAL, MONEY, NCHAR, NVARCHAR, SERIAL, SERIAL8, SMALLFLOAT, SMALLINT, TEXT, VARCHAR y tipos definidos por el usuario. Si desea obtener descripciones de estos tipos de datos, consulte la publicacin IBM Informix: Guide to SQL Reference. La Figura 5-48 muestra la pantalla de informacin de columna para una tabla que tiene las columnas BOOLEAN, INT8 y SERIAL8, as como otros tipos de datos incorporados.
Nombre columna id_num yes_or_no int8col serial8col text_descr Tipo integer boolean int8 serial8 char(20) Nulos s s s s s
Figura 5-48. Visualizacin de informacin de columna para una tabla con varios tipos incorporados
Objetos grandes: Los objetos grandes son tipos de datos incorporados que almacenan una gran cantidad de datos en una sola columna. En una tabla, las columnas del tipo de datos de objeto grande (large-object) contienen realmente punteros a los espacios de almacenamiento fsicos donde el servidor de bases de datos coloca los objetos de datos grandes. DBAccess puede visualizar cualquiera de los siguientes tipos de datos de objeto grande:
Captulo 5. Opcin Tabla
5-39
v TEXT, BYTE Dynamic Server v CLIOB, BLOB Fin de Dynamic Server La opcin Columnas visualiza el tipo de datos especfico para cualquier columna que contenga punteros a objetos grandes. La Figura 5-49 muestra la visualizacin de la informacin de columnas para una tabla que tiene una columna BYTE.
Nombre columna id binary_col Tipo integer byte Nulos s s
Tipos de datos ampliados en Dynamic Server Este apartado muestra cmo visualiza DBAccess los tipos de datos definidos por el usuario y complejos para Dynamic Server. Tipos de datos opacos (opaque): Un tipo de datos opaco caracteriza datos que no se pueden representar mediante ninguno de los tipos incorporados que pertenecen al servidor de bases de datos. DBAccess puede identificar y visualizar los tipos de datos opacos. Por ejemplo, suponga que asigna un tipo de datos opaco denominado circle_t a una columna denominada circle_col. La opcin Columnas visualiza el nombre del tipo de datos opaco en la columna Tipo, como muestra la Figura 5-50.
Nombre columna id circle_col Tipo integer circle_t Nulos s s
Figura 5-50. Visualizacin de informacin para una columna con un tipo de datos opaco
Tipos de coleccin: Un tipo de coleccin contiene cero o ms elementos y se define ms especficamente con uno de los siguientes nombres de tipo de datos. Tipo de datos Caractersticas SET Coleccin no ordenada de elementos en la que no se permiten duplicados
5-40
MULTISET LIST
Coleccin no ordenada de elementos en la que se permiten duplicados Coleccin ordenada de elementos en la que se permiten duplicados
DBAccess visualiza la clase especfica del tipo de coleccin en la columna Tipo. Por ejemplo, la Figura 5-51 muestra la visualizacin de una columna de tipo de datos SET denominada siblings.
Nombre columna id siblings Tipo integer set Nulos s s
Figura 5-51. Visualizacin de informacin para una columna con un tipo de datos de coleccin
Tipos de fila: La opcin Columnas para una tabla que incluye una columna con un tipo de fila visualiza la serie Row en la columna Tipo. DBAccess visualiza esta serie tanto si la columna tiene un tipo de fila con nombre como si tiene un tipo de fila sin nombre. Suponga que define el tipo de fila rectangle_t y lo asigna a la columna rect. La Figura 5-52 muestra que la pantalla Columnas para rect devuelve row como tipo de datos en lugar del nombre de tipo de fila especfico rectangle_t.
Nombre columna id rect Tipo integer row Nulos s s
La tabla siguiente muestra el significado de cada columna de la pantalla. Columna de la pantalla Nombre_ndice Descripcin Nombre del ndice
Captulo 5. Opcin Tabla
5-41
Propietario del ndice Tipo de ndice (exclusivo o duplicado) Indica si el ndice est agrupado en clsteres. (Un ndice con clsteres hace que la tabla se vuelva a ordenar fsicamente en la misma secuencia que el ndice). Mtodo de acceso de ndice (por ejemplo B-tree o funcional) Columna o columnas en las que se define el ndice
Mtodo_acceso Columnas
Para obtener informacin adicional sobre los tipos de ndices disponibles en el servidor de bases de datos, consulte la publicacin IBM Informix: Performance Guide. Dynamic Server Puede visualizar informacin para ndices no organizados en B-tree, incluidos los ndices basados en los mtodos de acceso secundarios definidos por el usuario que Dynamic Server permite. Por ejemplo, el ndice mostrado en la Figura 5-54 se basa en un mtodo de acceso Fulltext que proporciona un mdulo DataBlade.
Nombre_ndice text_idx Propiet. wilma Tipo/Clstr dupls/No Mtodo_acceso Fulltext Columnas zone_descr
Para obtener informacin sobre los mtodos de acceso definidos por el usuario, consulte la documentacin de DataBlade o la documentacin para el mtodo de acceso. Fin de Dynamic Server
5-42
A menos que su conexin se liste por separado, tendr los privilegios otorgados para public (una categora general para todos los usuarios). Si desea informacin acerca de los privilegios a nivel de base de datos, utilice una sentencia SELECT para acceder a la tabla de catlogo de sistema sysusers.
Esta pantalla indica los siguientes privilegios de referencias a nivel de tabla: v El usuario betty puede hacer referencia a las columnas 1, 2 y 3 de la tabla especificada. v El usuario wilma puede hacer referencia a todas las columnas de la tabla. v Los usuarios a los que slo se han otorgado privilegios en public no pueden acceder a ninguna columna de la tabla.
5-43
Primaria Verificar
Muestra las restricciones de Figura 5-62 en la pgina 5-46 comprobacin de las columnas de la tabla especificada Lista las columnas que deben contener datos exclusivos Lista las columnas para las que se han definido valores por omisin y el valor por omisin Vuelve al men INFO ninguna ninguna
Salir
ninguna
Visualizacin de restricciones referenciales Al seleccionar la opcin Referencia en el men RESTRICCIONES, aparece el men REFERENCIA, como muestra la Figura 5-58.
REFERENCIA - mytab: Referenciantes referenciadas Salir Mostrar restricciones de clave externa. -----------------mydata@mydbserv-------------- Pulse CTRL-W para Ayuda --------
El men REFERENCIA le permite visualizar la informacin siguiente: v Restricciones de clave externa (referenciantes) v Columnas de la tabla actual v Habilitacin de supresiones en cascada v Columnas a las que se hace referencia (columnas a las que las columnas de otra tabla hacen referencia como claves externas) Seleccione la opcin Referenciantes del men REFERENCIA para visualizar las restricciones de clave externa de la tabla actual, como muestra la Figura 5-59.
5-44
REFERENCIA - myaccts: Referenc referenciaDa Salir Mostrar restricciones referenciales. -----------------sub_accounts -----------Pulse CTRL-W para Ayuda ---------------Nombre Restr. r107_13 Col. referenciante ref_num ref_type ref_num ref_type Tabla referenciada sub_accounts Col. referenciada acc_num acc_type acc_num CD S
r107_13
accounts acc_type
Seleccione la opcin referenciaDa en el men REFERENCIA para visualizar otras tablas y columnas que hagan referencia a las columnas actuales como claves externas, como muestra la Figura 5-60.
REFERENCIA - myaccts: Referenc referenciaDa Salir Mostrar columnas que tienen claves externas que hacen referencia a esta tabla. ------------------accounts ------------Pulse CTRL-W para Ayuda -----------------Nombre Restr. r107_13 Col. referenciada acc_num acc_type Tabla referenciante sub_accounts Col. referenciante ref_acc ref_type CD S
Seleccione Salir para volver al men RESTRICCIONES. Pantallas de restricciones primarias y de verificacin de ejemplo La Figura 5-61 muestra las columnas que forman una clave primaria. Esta pantalla aparece al seleccionar Primaria en el men RESTRICCIONES.
RESTRICCIONES - mytab: Referencias Restricciones de clave primaria Primaria Verificar nica Por defecto Salir
-----------------mydata@mydbserv------------------ Pulse CTRL-W para Ayuda -----Nombre restriccin constraint1 Nombre Columna assembly partnum
Seleccione la opcin Verificar del men RESTRICCIONES para visualizar las restricciones de comprobacin que se han puesto en las columnas de la tabla actual, como muestra la Figura 5-62.
5-45
Verificar
--------------------mydata@mydbserv------------- Pulse CTRL-W para Ayuda ------Nombre restriccin cons2 Valor (column1 > (column2 * 100 - 1000 + column1 / 2 column2/20 + 40 * 3 - 55 * column2 + 77 * column1)) column2 > column3 column3 > 100
cons3 cons4
Visualizacin de activadores
Al seleccionar la opcin Disparador en el men INFO, aparece la pantalla INFORMAR SOBRE DISPARADOR, como muestra la Figura 5-63.
INFORMAR SOBRE DISPARADOR>> Elija un disparador con las flechas o introduzca un nombre y pulse Intro. ------------------mydata@mydbserv--------------- Pulse CTRL-W para Ayuda -----updrec_t
Seleccione un activador en la lista de nombres de activador de la tabla actual. Si no desea seleccionar un activador, pulse la tecla de Interrupcin y volver al men INFORMAR SOBRE TABLA. Si la informacin de cabecera y de cuerpo para el activador seleccionado se ajusta en una pantalla, volver a aparecer el men INFO, visualizando la informacin de activador, como muestra la Figura 5-64.
INFO - updrec_t: .... Disparador Estado Tabla Salir Mostrar informacin de la cabecera y cuerpo de un disparador. ----------------- mystores@dbserver1 ----------- Pulse CTRL-W para Ayuda -----create trigger updrec_t unit_price on stock referencing old as pre_upd new as post_upd (insert into log_record values (stock_num, CURRENT, pre_upd.unit_price, post_upd.unit_price)) for each row;
La Figura 5-64 muestra la informacin de cabecera para un activador, que consta de la sentencia CREATE TRIGGER y del nombre de activador, la
5-46
sentencia de SQL que activa un suceso y la clusula de referencia. El cuerpo del activador es la accin activada. En la Figura 5-64, la accin activada es la sentencia INSERT. Si el activador no se ajusta en una sola pantalla del men INFO, utilice el men situado en la parte superior de la pantalla como se indica a continuacin: v Pulse P o, si la opcin Prxima est resaltada, pulse INTRO para avanzar a la pantalla siguiente de informacin de activador. Contine pulsando P o INTRO segn sea necesario para moverse por las pginas de informacin. v Seleccione Rehacer en cualquier momento para visualizar la informacin de activador desde el principio. v Seleccione Salir para volver al men TABLA. Extended Parallel Server Extended Parallel Server no soporta los activadores. Fin de Extended Parallel Server
Figura 5-65. Informacin de fragmentacin donde se aplica la estrategia en rueda a la tabla y al ndice
nd/Nom. tabla muestra el objeto que se ha fragmentado explcitamente. Dynamic Server Si utiliza Dynamic Server, la pantalla incluye una columna Tipo para indicar si el fragmento de la lnea forma parte de un ndice o de los datos de tabla. En la Figura 5-65, la tabla cust se ha creado con la estrategia en rueda, pero el ndice se ha creado sin especificar ninguna estrategia. En este caso, los ndices estn ubicados en los espacios DB por omisin. Fin de Dynamic Server
Captulo 5. Opcin Tabla
5-47
Al crear un ndice, suponga que utiliza la sentencia siguiente para aplicar una estrategia de fragmentacin:
create index custnum < custnum > remainder idx on cust(custnum) fragment by expression 200 in dbspace1, 200 in dbspace2, in rootdbs;
Figura 5-66. Informacin de fragmentacin donde tabla e ndice tienen estrategias diferentes
nd/Nom. tabla muestra el nombre de ndice porque la fragmentacin se ha aplicado explcitamente al ndice.
Esta pantalla lista los nombres de las tablas que existen en la base de datos actual. Puede suprimir una tabla de uno de los modos siguientes: v Escriba el nombre de tabla y pulse INTRO. Deber utilizar este mtodo e incluir el nombre de va de acceso completo si desea suprimir una tabla que no est en la base de datos actual. v Utilice las teclas de flecha para resaltar el nombre de la tabla que desea suprimir de la base de datos y pulse INTRO.
5-48
Para salir de la pantalla BORRAR TABLA sin suprimir una tabla, pulse la tecla de Interrupcin. Volver al men TABLA. Aviso: Cuando se suprime una tabla, se suprimen la tabla y todos los datos que sta contiene. Despus de seleccionar una tabla para suprimirla, DBAccess visualiza el men CONFIRMAR, que solicita una confirmacin antes de suprimir la tabla, tal y como muestra la Figura 5-68.
CONFIRMAR: No S No, no se desea borrarla. -----------------mydata@mydbserv------------------ Pulse CTRL-W para Ayuda -----clients customer orders
El valor por omisin es No para evitar que se suprima una tabla. Una tabla se deber suprimir explcitamente. De este modo, si desea suprimir la tabla resaltada, pulse la tecla S o utilice la tecla de flecha derecha para resaltar S y pulse INTRO. DBAccess suprime la tabla.
Manuales relacionados
Deber tener los siguientes manuales disponibles al crear o modificar una estructura o un esquema de tabla: v Para obtener informacin sobre cmo denominar una tabla o una columna, consulte la publicacin IBM Informix: Guide to SQL Syntax. v Para obtener ms informacin sobre los tipos de datos, consulte la publicacin IBM Informix: Guide to SQL Reference. v Para obtener informacin sobre la fragmentacin y la asignacin de espacio de almacenamiento, consulte la publicacin IBM Informix: Administrator's Guide. v Si desea recomendaciones relacionadas con la fragmentacin, los ndices y el tamao de extensin, consulte la publicacin IBM Informix: Performance Guide. v Para obtener informacin sobre los nombres de entornos locales no por omisin y los tipos de datos de tipo carcter (CHAR, VARCHAR, NCHAR, NVARCHAR y TEXT), consulte la publicacin IBM Informix: Gua del usuario de GLS.
5-49
v Para obtener informacin sobre cmo disear, implementar y gestionar la base de datos, consulte la publicacin IBM Informix: Gua para el diseo y la implantacin de bases de datos.
5-50
En este captulo
Este captulo describe las opciones Conexin y Sesin del men principal. Utilice la opcin Conexin si desea conectarse a un servidor de bases de datos y a una base de datos especficos o desconectarse explcitamente del entorno de base de datos actual. Utilice la opcin Sesin para visualizar informacin acerca de la sesin de DBAccess actual. Soporte de idioma global (Global Language Support) Si desea conocer las consideraciones acerca de GLS que se aplican al establecimiento de una conexin entre una aplicacin cliente, por ejemplo DBAccess, y una base de datos, consulte la publicacin IBM Informix: Gua del usuario de GLS. El servidor de bases de datos examina la informacin de entorno local de cliente pasada por el cliente, verifica el entorno local de la base de datos y determina el entorno local de proceso de servidor para transferir datos entre el cliente y la base de datos. Fin de Soporte de idioma global (Global Language Support)
6-1
Si no especifica un identificador de usuario en la pantalla NOMBRE DE USUARIO y pulsa INTRO, ver la pantalla SELECCIONAR BASE_DATOS estndar que lista las bases de datos del servidor de bases de datos elegido. Si entra el nombre de inicio de sesin que desea que DBAccess utilice al conectarse al servidor de bases de datos de destino, DBAccess visualizar la pantalla CONTRASEA, como muestra la Figura 6-3.
6-2
CONTRASEA >> Introduzca la contrasea asociada al identificador de usuario. ------------------------------------------------- Pulse CTRL-W para Ayuda ----coral cowry seahorse starfish
En la pantalla CONTRASEA, entre una contrasea asociada con el identificador de usuario o pulse INTRO si no desea entrar una contrasea. Por razones de seguridad, la contrasea que entra en pantalla no se visualiza. Consejo: Si pulsa CONTROL-C en la pantalla NOMBRE DE USUARIO, es posible que DBAccess intente conectarse al servidor de bases de datos especificado en lugar de interrumpir la sesin. Esta situacin se produce porque la pulsacin de CONTROL-C en esta pantalla es equivalente a la utilizacin del nombre de usuario actual. Si la combinacin de identificador de usuario y contrasea es vlida, se conectar al servidor de bases de datos de destino. Entonces puede seleccionar una base de datos en dicho servidor de bases de datos. Aparecer la pantalla SELECCIONAR SERVIDOR BASE_DATOS, tal y como muestra la Figura 6-4.
SELECCIONAR SERVIDOR BASE_DATOS>> Elija un servidor con las flechas o introduzca un nombre y pulse Intro. --------------------------------------------- Pulse CTRL-W para Ayuda -------coral cowry seahorse starfish
La pantalla SELECCIONAR SERVIDOR BASE_DATOS muestra una lista en orden alfabtico de los servidores de bases de datos que se encuentran en el archivo $INFORMIXDIR/etc/sqlhosts en UNIX o en la entrada sqlhosts del registro en NT. La primera entrada est resaltada. Pulse INTRO para seleccionar el servidor de bases de datos o seleccione un servidor de bases de datos diferente. Si las entradas ocupan ms de una pgina, utilice las teclas de flecha para mover el cursor a fin de resaltar los puntos suspensivos (...) y aparecer la siguiente pgina de servidores de bases de datos.
Captulo 6. Opciones Conexin y Sesin
6-3
Permisos necesarios Para acceder a una base de datos especfica, deber tener permiso. Si no tiene permiso para conectarse al servidor de bases de datos especificado, aparecer un mensaje de error. Seleccione un servidor de bases de datos diferente para el que tenga permiso o solicite al administrador del servidor de bases de datos permiso para conectarse al servidor de bases de datos. Si tiene los permisos correctos para el servidor de bases de datos especificado, se le solicitar que especifique una base de datos para utilizarla en dicho servidor de bases de datos. Cuando aparece la pantalla SELECCIONAR BASE_DATOS, el nombre del servidor de bases de datos especificado estar resaltado, tal y como muestra la Figura 6-5.
SELECCIONAR BASE_DATOS >> Seleccionar una base de datos o introducir un nombre y pulsar Intro. ---------------------- @coral ----------------- Pulse CTRL-W para Ayuda -------borabora@coral huahine@coral moorea@corala
La pantalla SELECCIONAR BASE_DATOS lista alfabticamente todas las bases de datos disponibles en el servidor de bases de datos especificado. La lista de bases de datos de la pantalla SELECCIONAR BASE_DATOS depende de la conexin actual. Por ejemplo: v Si no existe ninguna conexin actual o si la conexin actual es una conexin mplicita por omisin, se visualizarn todas las bases de datos listadas en el valor de la variable de entorno DBPATH. v Si existe una conexin explcita actual, se visualizarn todas las bases de datos de DBPATH que pertenezcan al servidor actual. Para obtener informacin sobre cmo establecer la variable de entorno DBPATH, consulte la publicacin IBM Informix: Guide to SQL Reference. Para seleccionar una base de datos, escriba el nombre de base de datos o utilice las teclas de flecha para resaltar el nombre de una base de datos y, a continuacin, pulse INTRO. Si entra en el men CONECTAR con una conexin actual y la nueva conexin se realiza satisfactoriamente, DBAccess se desconectar del entorno anterior y cerrar las bases de datos que pertenezcan a dicho entorno. Para obtener ms informacin, consulte el apartado Cierres implcitos en la pgina 6-5.
6-4
Si entra el nombre de una base de datos no existente o de una base de datos que DBAccess no puede localizar, aparecer un mensaje de error. Para salir de la pantalla SELECCIONAR BASE_DATOS sin seleccionar una base de datos, pulse la tecla de Interrupcin. Volver al men CONEXIN, pero la conexin del servidor de bases de datos no se cortar. Cierres implcitos DBAccess cerrar las conexiones o bases de datos abiertas cuando se conecte a un entorno nuevo, en las situaciones siguientes: v Cuando se conecta a un entorno nuevo de base de datos sin desconectarse explcitamente del entorno actual, DBAccess realizar una desconexin implcita y la base de datos se cerrar. v Cuando se conecte a un servidor de bases de datos y, a continuacin, cierre la base de datos, el servidor de bases de datos permanecer conectado. v Cuando se conecte a un servidor de bases de datos, abra una base de datos y, a continuacin, cierre la base de datos, el servidor de bases de datos permanecer conectado. v Si abre una base de datos y, a continuacin, intenta conectarse a un servidor de bases de datos, DBAccess realizar una desconexin implcita y cerrar la base de datos. Slo se permite una conexin. Deber desconectarse del servidor de bases de datos asociado con la base de datos abierta o cerrar la base de datos para poderse conectar a otro servidor de bases de datos. Si DBAccess necesita cerrar una base de datos que an tiene transacciones pendientes, se le solicitar que confirme o retrotraiga dichas transacciones, como se describe en el apartado Proceso de transacciones en la pgina 6-6.
Cuando seleccione la opcin Desconectar en el men CONEXIN, deber confirmar su decisin en la pantalla de confirmacin DESCONECTAR. Estn disponibles las dos opciones siguientes:
6-5
v Para confirmar que desea desconectar, pulse INTRO con la opcin por omisin S resaltada. DBAccess se desconecta del servidor de bases de datos y cierra la base de datos. v Si no desea desconectarse, pulse la tecla N o utilice la tecla de flecha derecha para resaltar No y pulse INTRO. DBAccess volver al men CONEXIN.
Proceso de transacciones
Una base de datos que tenga anotaciones cronolgicas de transacciones le solicitar que confirme o retrotraiga las transacciones cuando se desconecte explcitamente del entorno de bases de datos actual o cuando se conecte a otro entorno, lo que fuerza que DBAccess cierre una base de datos abierta. Aparecer el men TRANSACCIN, como muestra la Figura 6-7.
TRANSACCIN: Commit Rollback Hacer commit de la transaccin actual. ---------------- moorea@coral ---------------- Pulse CTRL-W para Ayuda --------
El men TRANSACCIN asegura que se confirme o retrotraiga una transaccin activa antes de cerrar la base de datos actual. Tiene las siguientes opciones de men: v El valor por omisin es Commit. Pulse INTRO y DBAccess confirmar la transaccin y cerrar la base de datos. v Si desea retrotraer la transaccin, utilice una tecla de flecha para mover el resaltado a la opcin Rollback. Pulse INTRO y DBAccess retrotraer la transaccin y cerrar la base de datos. Aviso: Seleccione cuidadosamente una opcin. Es posible que confirme transacciones que no desea si selecciona Commit. Si selecciona Rollback, perder las transacciones nuevas. Si pulsa la tecla de Interrupcin, DBAccess visualiza el men BASE_DATOS sin confirmar o retrotraer la transaccin.
6-6
Informix que se basan en la arquitectura dinmica escalable. Por ejemplo, ver Dynamic Server si utiliza Dynamic Server. v El servidor est conectado a un sistema principal denominado carrots. v El servidor es un servidor de mltiples hebras.
DB-ACCESS: Lenguaje-consulta Conexin Base_datos Tabla Sesin Recuperar informacin sobre la sesin de DB-Access actual. Salir
-------------------- @coral --------------- Pulse CTRL-W para Ayuda -------Servidor coral OnLine Conectado al host carrots Multi-threaded
Figura 6-8. Men principal con informacin de sesin de ejemplo para una instancia de Dynamic Server
Soporte de idioma nativo (Native Language Support) Si est ejecutando una base de datos de legado que admita el Soporte de idioma nativo, la opcin Sesin mostrar la secuencia de clasificacin y el tipo de carcter. Fin de Soporte de idioma nativo (Native Language Support) Soporte de idioma global (Global Language Support) La opcin Sesin no visualiza atributos de Soporte de idioma global, pero puede utilizar el mtodo mostrado en el apartado Recuperacin de informacin de entorno local no por omisin en la pgina 4-8 para obtener estos valores. Fin de Soporte de idioma global (Global Language Support) Para salir de la pantalla de informacin Sesin, seleccione otra opcin en el men principal.
6-7
6-8
()
[]
Esta sintaxis indica que puede escribir CREATE TABLE o CREATE TEMP TABLE.
Copyright IBM Corp. 1996, 2002
A-1
La barra vertical indica una eleccin entre varias opciones. Por ejemplo:
[VANILLA | CHOCOLATE [MINT] | STRAWBERRY]
Esta sintaxis indica que puede entrar VANILLA, CHOCOLATE, o STRAWBERRY y que, si entra CHOCOLATE, tambin puede entrar MINT. {} Cuando deba elegir slo una de varias opciones, las opciones estarn entre llaves y estarn separadas por barras verticales. Por ejemplo:
{GUAVA | MANGO | PASSIONFRUIT}
Esta sintaxis indica que debe entrar GUAVA, MANGO, o PASSIONFRUIT, pero no puede entrar ms de una eleccin. ... Los puntos suspensivos indican que puede entrar un nmero indefinido de elementos adicionales, por ejemplo el que precede inmediatamente a los puntos suspensivos. Por ejemplo:
old-column-name ...
Esta sintaxis indica que puede entrar una serie de nombres de columna existentes despus del primero. La publicacin IBM Informix: Guide to SQL Syntax contiene diagramas de sintaxis ms detallados, as como instrucciones para interpretar el formato de diagrama que se utiliza en dicho manual. Para obtener una explicacin general sobre cmo utilizar la ayuda en lnea en DBAccess, consulte el apartado Utilizacin de la pantalla AYUDA en la pgina 2-5.
A-2
Si no ve los archivos de mandatos incluidos con la base de datos de demostracin, compruebe lo siguiente:
Copyright IBM Corp. 1996, 2002
B-1
1. Ha copiado los archivos de mandatos de SQL de demostracin en el directorio actual al ejecutar el script de inicializacin de base de datos de demostracin? Si no los ha copiado, puede volver a ejecutar el script de inicializacin para copiarlos. 2. Ha iniciado DBAccess desde el directorio en el que ha instalado los archivos de mandatos de SQL de demostracin? Si no es as, salga de DBAccess, cambie al directorio apropiado e inicie DBAccess otra vez. Para obtener instrucciones sobre cmo ejecutar el script de inicializacin, copiar archivos de mandatos e iniciar DBAccess, consulte el Captulo 1, Cmo empezar con DB-Access, en la pgina 1-1. Utilice estos archivos de mandatos con DBAccess para realizar prcticas con SQL y la base de datos de demostracin. Puede volver a ejecutar el script de inicializacin de base de datos de demostracin siempre que desee renovar las tablas de base de datos y los archivos de SQL.
alt_cat.sql
El archivo de mandatos siguiente modifica la tabla catalog. Elimina la restriccin existente aa de la tabla catalog y aade una restriccin nueva, ab, que especifica supresiones en cascada. Puede utilizar este archivo de mandatos y, a continuacin, el archivo de mandatos del_stock.sql para realizar prcticas con las supresiones en cascada en una base de datos con anotaciones cronolgicas.
ALTER TABLE catalog DROP CONSTRAINT aa; ALTER TABLE catalog ADD CONSTRAINT (FOREIGN KEY (stock_num, manu_code) REFERENCES stock ON DELETE CASCADE CONSTRAINT ab);
c_calls.sql
El archivo de mandatos siguiente crea la tabla cust_calls:
CREATE TABLE cust_calls ( customer_num call_dtime user_id call_code call_descr res_dtime res_descr INTEGER, DATETIME YEAR TO MINUTE, CHAR(18) DEFAULT USER, CHAR(1), CHAR(240), DATETIME YEAR TO MINUTE, CHAR(240),
B-2
PRIMARY KEY (customer_num, call_dtime), FOREIGN KEY (customer_num) REFERENCES customer (customer_num), FOREIGN KEY (call_code) REFERENCES call_type (call_code) );
c_cat.sql
El archivo de mandatos siguiente crea la tabla catalog. Contiene una restriccin, aa, que le permite practicar con las supresiones en cascada ejecutando las sentencias de SQL de los archivos de mandatos alt_cat.sql y del_stock.sql en una base de datos con anotaciones cronolgicas.
CREATE TABLE catalog ( catalog_num SERIAL(10001), stock_num SMALLINT NOT NULL, manu_code CHAR(3) NOT NULL, cat_descr TEXT, cat_picture BYTE, cat_advert VARCHAR(255, 65), PRIMARY KEY (catalog_num), FOREIGN KEY (stock_num, manu_code) REFERENCES stock CONSTRAINT aa );
c_custom.sql
El archivo de mandatos siguiente crea la tabla customer:
CREATE TABLE customer ( customer_num SERIAL(101), fname CHAR(15), lname CHAR(15), company CHAR(20), address1 CHAR(20), address2 CHAR(20), city CHAR(15), state CHAR(2), zipcode CHAR(5), phone CHAR(18), PRIMARY KEY (customer_num) );
c_index.sql
El archivo de mandatos siguiente crea un ndice en la columna zipcode de la tabla customer:
CREATE INDEX zip_ix ON customer (zipcode);
c_items.sql
El archivo de mandatos siguiente crea la tabla items:
CREATE TABLE items ( item_num order_num stock_num manu_code SMALLINT, INTEGER, SMALLINT NOT NULL, CHAR(3) NOT NULL,
B-3
quantity SMALLINT CHECK (quantity >= 1), total_price MONEY(8), PRIMARY KEY (item_num, order_num), FOREIGN KEY (order_num) REFERENCES orders (order_num), FOREIGN KEY (stock_num, manu_code) REFERENCES stock (stock_num, manu_code) );
c_manuf.sql
El archivo de mandatos siguiente crea la tabla manufact:
CREATE TABLE manufact ( manu_code CHAR(3), manu_name CHAR(15), lead_time INTERVAL DAY(3) TO DAY, PRIMARY KEY (manu_code) );
c_orders.sql
El archivo de mandatos siguiente crea la tabla orders:
CREATE TABLE orders ( order_num SERIAL(1001), order_date DATE, customer_num INTEGER NOT NULL, ship_instruct CHAR(40), backlog CHAR(1), po_num CHAR(10), ship_date DATE, ship_weight DECIMAL(8,2), ship_charge MONEY(6), paid_date DATE, PRIMARY KEY (order_num), FOREIGN KEY (customer_num) REFERENCES customer (customer_num) );
c_proc.sql
El archivo de mandatos siguiente crea una rutina SPL. Lee el nombre completo y la direccin de un cliente y toma un apellido como su nico argumento. Esta rutina muestra el uso de legado de CREATE PROCEDURE. Dynamic Server Para ajustarse al estndar de SQL preferido con Dynamic Server, defina una funcin si desea devolver valores de una rutina. Fin de Dynamic Server
CREATE PROCEDURE read_address (lastname CHAR(15)) RETURNING CHAR(15), CHAR(15), CHAR(20), CHAR(15), CHAR(2), CHAR(5); DEFINE p_fname, p_city CHAR(15); DEFINE p_add CHAR(20); DEFINE p_state CHAR(2);
B-4
DEFINE p_zip CHAR(5); SELECT fname, address1, city, state, zipcode INTO p_fname, p_add, p_city, p_state, p_zip FROM customer WHERE lname = lastname; RETURN p_fname, lastname, p_add, p_city, p_state, p_zip; END PROCEDURE;
c_state
El archivo de mandatos siguiente crea la tabla state:
CREATE TABLE state ( code CHAR(2), sname CHAR(15), PRIMARY KEY (code) );
c_stock.sql
El archivo de mandatos siguiente crea la tabla stock:
CREATE TABLE stock ( stock_num SMALLINT, manu_code CHAR(3), description CHAR(15), unit_price MONEY(6), unit CHAR(4), unit_descr CHAR(15), PRIMARY KEY (stock_num, manu_code), FOREIGN KEY (manu_code) REFERENCES manufact );
c_stores.sql
El archivo de mandatos siguiente crea la base de datos stores_demo:
CREATE DATABASE stores_demo;
c_table.sql
El archivo de mandatos siguiente crea una base de datos denominada restock y, a continuacin, crea en dicha base de datos una tabla personalizada denominada sports:
CREATE DATABASE restock; CREATE TABLE sports ( catalog_no stock_no mfg_code mfg_name phone descript );
B-5
c_trig.sql
El archivo de mandatos siguientes crea una tabla denominada log_record y, a continuacin, crea un activador denominado upqty_i, que la actualiza:
CREATE TABLE log_record (item_num SMALLINT, ord_num INTEGER, username CHARACTER(8), update_time DATETIME YEAR TO MINUTE, old_qty SMALLINT, new_qty SMALLINT); CREATE TRIGGER upqty_i UPDATE OF quantity ON items REFERENCING OLD AS pre_upd NEW AS post_upd FOR EACH ROW(INSERT INTO log_record VALUES (pre_upd.item_num, pre_upd.order_num, USER, CURRENT, pre_upd.quantity, post_upd.quantity));
Extended Parallel Server Extended Parallel Server no soporta los activadores. Fin de Extended Parallel Server
c_type.sql
El archivo de mandatos siguiente crea la tabla call_type:
CREATE TABLE call_type ( call_code CHAR(1), code_descr CHAR(30), PRIMARY KEY (call_code) );
c_view1.sql
El archivo de mandatos siguiente crea una vista denominada custview en una tabla individual y otorga privilegios en la vista a public. Incluye las palabras clave WITH CHECK OPTION para verificar que los cambios efectuados en las tablas subyacentes mediante la vista no violan la definicin de la vista.
CREATE VIEW custview (firstname, lastname, company, city) AS SELECT fname, lname, company, city FROM customer WHERE city = Redwood City WITH CHECK OPTION; GRANT DELETE, INSERT, SELECT, UPDATE ON custview TO public;
c_view2.sql
El archivo de mandatos siguiente crea una vista en las tablas orders y items:
B-6
CREATE VIEW someorders (custnum,ocustnum,newprice) AS SELECT orders.order_num, items.order_num, items.total_price*1.5 FROM orders, items WHERE orders.order_num = items.order_num AND items.total_price > 100.00;
d_proc.sql
El archivo de mandatos siguiente elimina la rutina SPL que el archivo de mandatos c_proc.sql ha creado:
DROP PROCEDURE read_address;
d_trig.sql
El archivo de mandatos siguiente elimina el activador que el archivo de mandatos c_trig.sql ha creado:
DROP TRIGGER upqty_i;
d_view.sql
El archivo de mandatos siguiente elimina la vista denominada custview que el archivo de mandatos c_view1.sql ha creado:
DROP VIEW custview;
del_stock.sql
El archivo de mandatos siguiente suprime filas de la tabla stock donde el nmero de stock es 102. Esta supresin se realizar en cascada en la tabla catalog (aunque los cdigos de fabricante relacionados permanecern en la tabla manufact). El archivo de mandatos del_stock.sql se puede utilizar a continuacin del archivo de mandatos alt_cat.sql para realizar prcticas con las supresiones en cascada en una base de datos con anotaciones cronolgicas.
DELETE FROM stock WHERE stock_num = 102;
Despus de ejecutar las sentencias de SQL de los archivos de mandatos alt_cat.sql y del_stock.sql, emita la consulta siguiente en la tabla catalog para verificar que se han suprimido las filas:
SELECT * FROM catalog WHERE stock_num = 102;
La base de datos stores_demo se ha modificado. Es aconsejable que vuelva a ejecutar el script dbaccessdemo para volver a crear la base de datos original.
ins_table.sql
El archivo de mandatos siguiente inserta una fila en la tabla sports que el archivo de mandatos c_table.sql ha creado:
INSERT INTO sports VALUES (0,18,PARKR, Parker Products, 503-555-1212, Heavy-weight cotton canvas gi, designed for aikido or judo but suitable for karate. Quilted top with side ties, drawstring waist on pants. White with white belt. Pre-washed for minimum shrinkage. Sizes 3-6.);
B-7
opt_disk.sql
El archivo de mandatos siguiente proporciona un ejemplo de una sentencia SELECT en un subsistema de disco ptico. Incluye los operadores de slo lectura family() y volume() que soportan el almacenamiento ptico. (Esto slo est disponible con el Optical Subsystem.) La consulta genera una lista de los volmenes que contienen imgenes de cascos para bicicleta. Se genera una fila de salida (family, volume) para cada fila de datos que contiene una imagen de un casco para bicicleta. El operador family() devuelve el nombre de la familia ptica donde se almacena una columna de blob ptico y volume() devuelve el nmero del volumen donde se almacena una columna de blob ptico. Estas funciones slo son vlidas para los datos almacenados en soportes pticos.
SELECT family(cat_picture), volume(cat_picture) FROM catalog WHERE stock_num = 110;
sel_agg.sql
La sentencia SELECT del siguiente archivo de mandatos realiza consultas en los datos de tabla utilizando funciones de agregacin. Combina las funciones de agregacin MAX y MIN en una sola sentencia.
SELECT MAX (ship_charge), MIN (ship_charge) FROM orders;
sel_all.sql
El siguiente archivo de mandatos de ejemplo contiene las siete clusulas de la sentencia SELECT que puede utilizar en la implementacin de Informix del SQL interactivo. Esta sentencia SELECT une las tablas orders y items. Tambin utiliza etiquetas de visualizacin, alias de tabla y enteros como indicadores de columna, agrupa y ordena los datos y pone los resultados en una tabla temporal.
SELECT o.order_num, SUM (i.total_price) price, paid_date - order_date span FROM orders o, items i WHERE o.order_date > 01/01/90 AND o.customer_num > 110 AND o.order_num = i.order_num GROUP BY 1, 3 HAVING COUNT (*) < 5 ORDER BY 3 INTO TEMP temptab1;
sel_group.sql
El siguiente archivo de mandatos de ejemplo incluye las clusulas GROUP BY y HAVING. La clusula HAVING suele complementar una clusula GROUP BY aplicando una o ms condiciones de calificacin a los grupos despus de que stos se formen, lo que es similar al modo en que la clusula WHERE califica las filas individuales. (Una ventaja de la utilizacin de una clusula
B-8
HAVING consiste en que se pueden incluir agregados en la condicin de bsqueda; no se pueden incluir agregados en la condicin de bsqueda de una clusula WHERE). Cada clusula HAVING compara una columna o expresin agregada del grupo con otra expresin agregada del grupo o con una constante. Puede utilizar la clusula HAVING para poner condiciones en los valores de columna y los valores de agregado de la lista de grupos.
SELECT order_num, COUNT(*) number, AVG (total_price) average FROM items GROUP BY order_num HAVING COUNT(*) > 2;
sel_join.sql
El siguiente archivo de mandatos de ejemplo utiliza una unin simple en las tablas customer y cust_calls. Esta consulta slo devuelve las filas que muestran que el cliente ha realizado una llamada al servicio del cliente.
SELECT c.customer_num, c.lname, c.company, c.phone, u.call_dtime, u.call_descr FROM customer c, cust_calls u WHERE c.customer_num = u.customer_num;
sel_ojoin1.sql
El siguiente archivo de mandatos de ejemplo utiliza una unin externa simple en dos tablas. La utilizacin de la palabra clave OUTER delante de la tabla cust_calls la convierte en tabla subordinada. Una unin externa hace que la consulta devuelva informacin acerca de todos los clientes, aunque stos no realicen llamadas al servicio del cliente. Se recuperan todas las filas de la tabla customer dominante y se asignan valores nulos a las filas correspondientes de la tabla cust_calls subordinada.
SELECT c.customer_num, c.lname, c.company, c.phone, u.call_dtime, u.call_descr FROM customer c, OUTER cust_calls u WHERE c.customer_num = u.customer_num;
sel_ojoin2.sql
El siguiente archivo de mandatos de ejemplo crea una unin externa, que es el resultado de una unin simple a una tercera tabla. Este segundo tipo de unin externa se denomina unin simple anidada. Esta consulta realiza primero una unin simple en las tablas orders e items, recuperando informacin acerca de todos los pedidos de artculos que tienen un manu_code de KAR o SHM. A continuacin, realiza una unin externa, que combina esta informacin con los datos de la tabla customer dominante. Una clusula ORDER BY opcional reorganiza los datos.
SELECT c.customer_num, c.lname, o.order_num, i.stock_num, i.manu_code, i.quantity FROM customer c, OUTER (orders o, items i)
B-9
WHERE c.customer_num = o.customer_num AND o.order_num = i.order_num AND manu_code IN (KAR, SHM) ORDER BY lname;
sel_ojoin3.sql
La siguiente sentencia SELECT de ejemplo es el tercer tipo de unin externa, conocida como unin externa anidada. Realiza consultas sobre los datos de tabla creando una unin externa, que es el resultado de una unin externa con una tercera tabla. Esta consulta realiza primero una unin externa en las tablas orders y items, recuperando informacin acerca de todos los pedidos de artculos que tienen un manu_code de KAR o SHM. A continuacin, realiza una unin externa, que combina esta informacin con los datos de la tabla customer dominante. Esta consulta conserva los nmeros de pedido que el ejemplo anterior ha eliminado, devolviendo filas para los pedidos que no contienen artculos con uno de los cdigos de fabricante. Una clusula ORDER BY opcional reorganiza los datos.
SELECT c.customer_num, lname, o.order_num, stock_num, manu_code, quantity FROM customer c, OUTER (orders o, OUTER items i) WHERE c.customer_num = o.customer_num AND o.order_num = i.order_num AND manu_code IN (KAR, SHM) ORDER BY lname;
sel_ojoin4.sql
El ejemplo siguiente realiza consultas en los datos de tabla utilizando el cuarto tipo de unin externa. Esta consulta muestra una unin externa, que es el resultado de una unin externa de cada una de dos tablas con una tercera tabla. En este tipo de unin externa, las relaciones de unin slo son posibles entre la tabla dominante y las tablas subordinadas. Esta consulta une de forma individual las tablas subordinadas orders y cust_calls a la tabla dominante customer pero no une las dos tablas subordinadas. (Una clusula INTO TEMP selecciona los resultados en una tabla temporal.)
SELECT c.customer_num, lname, o.order_num, order_date, call_dtime FROM customer c, OUTER orders o, OUTER cust_calls x WHERE c.customer_num = o.customer_num AND c.customer_num = x.customer_num INTO temp service;
sel_order.sql
El ejemplo siguiente utiliza las clusulas ORDER BY y WHERE para realizar la consulta. En esta sentencia SELECT, la comparacin bicycle% (condicin LIKE o bicycle* para una condicin MATCHES) especifica las letras bicycle
B-10
seguidas de cualquier secuencia de cero o ms caracteres. Limita la bsqueda adicionalmente aadiendo otra condicin de comparacin que excluye un manu_code de PRC.
SELECT * FROM stock WHERE description LIKE bicycle% AND manu_code NOT LIKE PRC ORDER BY description, manu_code;
sel_sub.sql
El ejemplo siguiente utiliza una subconsulta para realizar la consulta. Esta autounin utiliza una subconsulta correlacionada para recuperar y listar los 10 artculos de mayor precio que se han pedido.
SELECT order_num, total_price FROM items a WHERE 10 > (SELECT COUNT (*) FROM items b WHERE b.total_price < a.total_price) ORDER BY total_price;
sel_union.sql
El ejemplo siguiente utiliza la clusula UNION para realizar consultas en los datos de dos tablas. La consulta compuesta realiza una unin en las columnas stock_num y manu_code de las tablas stock y items. La sentencia selecciona los artculos que tienen un precio de unidad inferior a 25,00 $ o que se han pedido en cantidades superiores a tres y lista su stock_num y manu_code.
SELECT DISTINCT stock_num, manu_code FROM stock WHERE unit_price < 25.00 UNION SELECT stock_num, manu_code FROM items WHERE quantity > 3;
upd_table.sql
El ejemplo siguiente actualiza la tabla sports que el archivo de mandatos c_table.sql ha creado:
UPDATE sports SET phone = 808-555-1212 WHERE mfg_code = PARKR;
B-11
v En primer lugar deber crear una base de datos stores_demo con el mandato siguiente:
dbaccessdemo -log
v Los archivos createdw.sql y loaddw.sql deben estar en el mismo directorio que los archivos con la extensin .unl que loaddw.sql utiliza.
createdw.sql
Este archivo crea la nueva base de datos sales_demo con anotaciones cronolgicas y, a continuacin, crea tablas en dicha base de datos. Contiene las sentencias siguientes:
create database sales_demo with log; create table product ( product_code integer, product_name char(31), vendor_code char(3), vendor_name char(15), product_line_code smallint, product_line_name char(15)); create table customer ( customer_code integer, customer_name char(31), company_name char(20)); create table sales ( customer_code integer, district_code smallint, time_code integer, product_code integer, units_sold smallint, revenue money (8,2), cost money (8,2), net_profit money(8,2)); create table time ( time_code int, order_date date, month_code smallint, month_name char(10), quarter_code smallint, quarter_name char(10), year integer ); create table geography ( district_code serial, district_name char(15), state_code char(2), state_name char(18), region smallint);
B-12
loaddw.sql
Este archivo contiene los mandatos necesarios para cargar datos de dos fuentes: v Los archivos con la extensin .unl del directorio de demostracin v Datos seleccionados en la base de datos stores_demo Estas sentencias de SQL de loaddw.sql llevan a cabo estas acciones:
connect to "stores_demo "; load from "add_orders.unl" insert into stores_demo :orders; load from add_items.unl insert into stores_demo :items; connect to "sales_demo"; load from costs.unl insert into cost; load from time.unl insert into time; insert into geography(district_name, state_code, state_name) select distinct c.city, s.code, s.sname from stores_demo :customer c, stores_demo :state s where c.state = s.code; update geography -- convierte los valores de state_code en valores de region set region = 1 where state_code = "CA"; update geography set region = 2 where state_code <> "CA"; insert into customer (customer_code, customer_name, company_name) select c.customer_num, trim(c.fname) || " " || c.lname, c.company from stores_demo :customer c; insert into product (product_code, product_name, vendor_code, vendor_name, product_line_code, product_line_name) select a.catalog_num, trim(m.manu_name) || " "|| s.description, m.manu_code, m.manu_name, s.stock_num, s.description from stores_demo :catalog a, stores_demo :manufact m, stores_demo :stock s where a.stock_num = s.stock_num and a.manu_code = s.manu_code and s.manu_code = m.manu_code; insert into sales (customer_code, district_code, time_code, product_code, units_sold, revenue, cost, net_profit) select c.customer_num, g.district_code, t.time_code, p.product_code, SUM(i.quantity), SUM(i.total_price), SUM(i.quantity * x.cost), SUM(i.total_price) - SUM(i.quantity * x.cost) from stores_demo :customer c, geography g, time t, product p, stores_demo :items i, stores_demo :orders o, cost x where c.customer_num = o.customer_num and o.order_num = i.order_num and p.product_line_code = i.stock_num and p.vendor_code = i.manu_code and t.order_date = o.order_date and
B-13
p.product_code = x.product_code and c.city = g.district_name GROUP BY 1,2,3,4; connect to "stores_demo "; load from add_orders.unl insert into stores_demo :orders; load from add_items.unl insert into stores_demo :items; connect to "sales_demo"; load from costs.unl insert into cost; load from time.unl insert into time; insert into geography(district_name, state_code, state_name) select distinct c.city, s.code, s.sname from stores_demo :customer c, stores_demo :state s where c.state = s.code; update geography -- convierte los valores de state_code en valores de region set region = 1 where state_code = "CA"; update geography set region = 2 where state_code <> "CA"; insert into customer (customer_code, customer_name, company_name) select c.customer_num, trim(c.fname) || " " || c.lname, c.company from stores_demo :customer c; insert into product (product_code, product_name, vendor_code, vendor_name, product_line_code, product_line_name) select a.catalog_num, trim(m.manu_name) || " " || s.description, m.manu_code, m.manu_name, s.stock_num, s.description from stores_demo :catalog a, stores_demo :manufact m, stores_demo :stock s where a.stock_num = s.stock_num and a.manu_code = s.manu_code and s.manu_code = m.manu_code; insert into sales (customer_code, district_code, time_code, product_code, units_sold, revenue, cost, net_profit) select c.customer_num, g.district_code, t.time_code, p.product_code, SUM(i.quantity), SUM(i.total_price), SUM(i.quantity * x.cost), SUM(i.total_price) - SUM(i.quantity * x.cost) from stores_demo :customer c, geography g, time t, product p, stores_demo :items i, stores_demo :orders o, cost x where c.customer_num = o.customer_num and o.order_num = i.order_num and p.product_line_code = i.stock_num and p.vendor_code = i.manu_code and t.order_date = o.order_date and p.product_code = x.product_code and c.city = g.district_name GROUP BY 1,2,3,4;
B-14
Rutinas definidas por el usuario para el modelo de base de datos relacional de objetos
La base de datos superstores_demo no sustituye la base de datos stores_demo. Ambas bases de datos estn disponibles. El esquema de la base de datos superstores_demo no es compatible con versiones anteriores de stores_demo. En muchos casos, no puede utilizar las consultas de prueba desarrolladas para stores_demo en las tablas de superstores_demo porque las tablas son diferentes. No hay archivos de mandatos de SQL especficamente asociados con superstores_demo. Sin embargo, existen rutinas definidas por el usuario que puede utilizar con las pantallas descritas en el Captulo 3, Opcin RDSQL, en la pgina 3-1 La base de datos superstores_demo incluye ejemplos de las caractersticas nuevas siguientes: v Tipos de coleccin: SET, LIST v Tipos de fila con nombre: location_t, loc_us_t, loc_non_us_t v Tipos de fila sin nombre v Herencia de tipos y tablas v Tipos de datos creados: BOOLEAN, SERIAL8, INT8 v Tipo de datos diferenciado: porcentaje v Objetos grandes inteligentes: BLOB y CLOB La base de datos superstores_demo tiene tipos de fila y tablas que soportan las siguientes jerarquas de herencia de tablas: v customer/retail_customer v customer/whlsale_customer v location/location_us v location/location_non_us Para obtener una descripcin completa de las tablas de superstores_demo y de las jerarquas de herencia, consulte la publicacin IBM Informix: Guide to SQL Reference. Si desea ms informacin sobre las rutinas definidas por el usuario, consulte la publicacin IBM Informix: Gua del desarrollador de rutinas y de tipos de datos definidos por el usuario.
B-15
B-16
Avisos
Es posible que IBM no ofrezca en todos los pases los productos, los servicios o las caractersticas que se describen en este documento. Consulte con el representante local de IBM para obtener informacin sobre los productos y servicios disponibles actualmente en su zona. Cualquier referencia a un producto, programa o servicio de IBM no pretende afirmar o implicar que slo se pueda utilizar ese producto, programa o servicio de IBM. En su lugar, se puede utilizar cualquier producto, programa o servicio funcionalmente equivalente que no infrinja ninguno de los derechos de propiedad intelectual de IBM. Sin embargo, la evaluacin y la verificacin del funcionamiento de cualquier producto, programa o servicio no IBM son responsabilidad del usuario. IBM puede tener patentes o solicitudes de patentes pendientes que incluyan el tema principal descrito en este documento. La entrega de este documento no le confiere ninguna licencia sobre dichas patentes. Puede enviar consultas sobre licencias, por escrito, a: IBM Director of Licensing IBM Corporation North Castle Drive Armonk, NY 10504-1785 EE.UU. Para realizar consultas sobre licencias relacionadas con la informacin de doble byte (DBCS), pngase en contacto con el Departamento de propiedad intelectual de IBM de su pas o enve las consultas, por escrito, a: IBM World Trade Asia Corporation Licensing 2-31 Roppongi 3-chome, Minato-ku Tokio 106-0032, Japn El prrafo siguiente no se aplica al Reino Unido ni a ningn otro pas donde tales disposiciones estn en contradiccin con la legislacin local: INTERNATIONAL BUSINESS MACHINES CORPORATION PROPORCIONA ESTA PUBLICACIN TAL CUAL SIN GARANTAS DE NINGUNA CLASE, YA SEAN EXPRESAS O IMPLCITAS, INCLUYENDO, PERO SIN LIMITARSE A, LAS GARANTAS IMPLCITAS DE NO INFRACCIN, COMERCIALIZACIN O IDONEIDAD PARA UN FIN DETERMINADO. Algunos pases no permiten la renuncia de las garantas expresas o implcitas en determinadas transacciones, por consiguiente, es posible que esta declaracin no sea aplicable a su caso.
C-1
Esta informacin puede incluir imprecisiones tcnicas o errores tipogrficos. Peridicamente se efectan cambios en la informacin aqu contenida; dichos cambios se incorporarn en las nuevas ediciones de la publicacin. IBM puede realizar en cualquier momento mejoras y/o cambios en el (los) producto(s) y/o programa(s) que se describe(n) en esta publicacin sin previo aviso. Las referencias que aparecen en esta informacin a sitios Web no IBM slo se proporcionan por comodidad y en ningn modo constituyen un respaldo de dichos sitios Web. Los materiales contenidos en esos sitios Web no forman parte de los materiales de este producto de IBM y la utilizacin de dichos sitios Web ser a cuenta y riesgo del usuario. IBM puede utilizar o distribuir la informacin que se le proporcione del modo que estime apropiado sin incurrir por ello en ninguna obligacin con el remitente. Los propietarios de licencias de este programa que deseen tener informacin acerca del mismo con el fin de posibilitar: (i) el intercambio de informacin entre programas creados de forma independiente y otros programas (incluido ste) y (ii) el uso mutuo de la informacin que se ha intercambiado, debern ponerse en contacto con: IBM Corporation J46A/G4 555 Bailey Avenue San Jose, CA 95141-1003 EE.UU. Dicha informacin puede estar disponible, sujeta a los trminos y condiciones apropiados, que incluyen en algunos casos el pago de una cuota. IBM proporciona el programa bajo licencia descrito en esta informacin y todo el material con licencia disponible para el mismo bajo los trminos del Acuerdo de cliente de IBM, el Acuerdo de licencia de programa internacional de IBM o cualquier acuerdo equivalente entre las dos partes. Los datos de rendimiento aqu contenidos se han determinado en un entorno controlado. Por consiguiente, es posible que los resultados obtenidos en otros entornos operativos varen significativamente. Algunas mediciones se pueden haber realizado en sistemas a nivel de desarrollo y no existe ninguna garanta de que dichas mediciones sean las mismas en sistemas disponibles de forma general. Adems, es posible que algunas mediciones se hayan estimado mediante la extrapolacin. Los resultados reales pueden variar. Los usuarios de este documento debern verificar los datos aplicables para el entorno especfico.
C-2
La informacin relacionada con productos no IBM se ha obtenido de los proveedores de dichos productos, de sus anuncios publicados o de otras fuentes disponibles pblicamente. IBM no ha probado dichos productos y no puede confirmar la precisin del rendimiento, la compatibilidad ni ninguna otra afirmacin relacionada con productos no IBM. Las preguntas sobre las posibilidades de los productos no IBM debern dirigirse a los proveedores de los mismos.
Avisos
C-3
Marcas registradas
AIX; DB2; DB2 Universal Database; Distributed Relational Database Architecture; NUMA-Q; OS/2, OS/390 y OS/400; IBM Informix; C-ISAM; Foundation.2000; IBM Informix 4GL; IBM InformixDataBladeModule; Client SDK; Cloudscape; Cloudsync; IBM InformixConnect; IBM InformixDriver for JDBC; Dynamic Connect; IBM InformixDynamic Scalable Architecture(DSA); IBM InformixDynamic Server; IBM InformixEnterprise Gateway Manager (Enterprise Gateway Manager); IBM InformixExtended Parallel Server; i.Financial Services; J/Foundation; MaxConnect; Object Translator; Red Brick; IBM Informix SE; IBM Informix SQL; InformiXML; RedBack; SystemBuilder; U2; UniData; UniVerse; wintegrate son marcas registradas de International Business Machines Corporation. Java y todas las marcas registradas y los logotipos basados en Java son marcas registradas de Sun Microsystems, Inc. en EE.UU. y en otros pases. Windows, Windows NT y Excel son marcas registradas de Microsoft Corporation en EE.UU. y/o en otros pases. UNIX es una marca registrada en EE.UU. y en otros pases cuya licencia se obtiene exclusivamente a travs de X/Open Company Limited. Otros nombres de compaas, productos y servicios utilizados en esta publicacin pueden ser marcas registradas o marcas de servicio de otras empresas.
C-4
ndice
Caracteres Especiales
- 1-14 %INFORMIXDIR%\bin 1-5 $INFORMIXDIR/bin 1-5 archivo (continuacin) crear para almacenar los resultados de consulta en 3-14 extensin .sql para archivos de mandatos 3-17, B-1 guardar sentencia de SQL actual en 3-17 guardar sentencias de SQL en 3-16 leer de la entrada estndar 1-21 mandato, mostrado B-2 mandato, seleccionar 3-16 archivo de mensajes para mensajes de error xviii archivos de mandatos archivos de mandatos de SQL proporcionados B-1 ejecutar desde la lnea de mandatos 1-18 elegir (pantalla TRAER) 3-16 guardar 3-17 modificar con un editor 2-6 normas para denominacin 3-18 archivos de mandatos de SQL deben estar en directorio actual 1-7, 1-8 requisitos para listar con el mandato Traer 3-17 sales_demo B-11 aviso, iconos xi ayuda xvi cmo leer los diagramas de sintaxis A-1 informacin de sintaxis en lnea para sentencias de SQL A-1 llamar con CONTROL-W A-1 paginar por las pantallas de informacin en lnea 2-6 salir de la pantalla de ayuda en lnea 2-6 AYUDA, men 2-5 BASE_DATOS, men (continuacin) opcin Escoger 4-2 opcin Info 4-6 opciones 1-15 opciones disponibles 4-2 pantalla CREAR BASE_DATOS 4-4 pantalla SELECCIONAR BASE_DATOS 4-3 SELECCIONAR BASE_DATOS, pantalla 4-2 seleccionar opciones en la lnea de mandatos 1-15 base de datos actual 4-1 almacenar en un espacio DB 4-5 cerrar 4-12 con transacciones activas 6-6 men DESCONECTAR 6-5 cerrar implcitamente 6-5 confirmar la decisin de eliminacin 4-12 crear 4-4 denominar 4-4 eliminar 4-11 opcin ceRrar 4-12 que se ajusta a ANSI, crear 4-6 seleccionar 2-6 seleccionar en un men 4-2 visualizar informacin para 4-6 base de datos ANSI 4-13 base de datos conforme a ANSI anotacin cronolgica de transacciones 4-6 especificar 4-5 base de datos conforme con los estndares ANSI y valor de SQLSTATE 1-19 base de datos de demostracin 1-6 archivos de mandatos de SQL B-1 configuracin de stores_demo 1-9 configuracin de superstores_demo 1-9 directorio de trabajo necesario para 1-8 instalar 1-8 modelos 1-7
A
ACTIVAR ELIMINACIN EN CASCADA, men 5-29 administrador de bases de datos 1-10 AGREGAR NULLS, men 5-11 AGREGAR TIPO, men 5-7 AGREGAR TIPO POR DEFECTO, men 5-34 AGREGAR VALOR DE COMPROBACIN, men 5-30 AGREGAR VALOR POR DEFECTO, men 5-34 ALTERAR FRAGMENTO, men 5-19 en rueda 5-19 sin estrategia 5-23 ALTERAR IDs DE FILA, men 5-26 ALTERAR TABLA, pantalla 5-4 anotacin cronolgica crear una base de datos con 4-6 especificar con almacenamiento intermedio o sin almacenamiento intermedio 4-6 anotacin cronolgica con almacenamiento intermedio 4-6 anotacin cronolgica sin almacenamiento intermedio cmo especificar 4-6 ANSI, comprobar la conformidad de las sentencias de SQL 1-19 ANSI, conformidad comprobar sentencias de SQL para 1-19 ANSI, conformidad con nivel xviii archivo almacenar resultados de consulta en 3-14 aadir resultados de consulta a 3-15
B
BARRA ESPACIADORA 2-3 BARRA ESPACIADORA, tecla 2-3 BASE_DATOS, men BORRAR BASE DE DATOS, pantalla 4-11 opcin Borrar 4-11 opcin ceRrar 4-12
X-1
base de datos de demostracin (continuacin) reinicializar 1-7 sales_demo 1-9 stores_demo, archivos de mandatos de SQL B-2 superstores_demo 1-7 bases de datos distribuidas, solicitar informacin de tabla en otro servidor 5-36 BLOB, tipo de datos 5-39 bloqueo de fila 5-25 BOOLEAN, tipo de datos 5-39 BORRAR BASE DE DATOS, pantalla dos modos de suprimir una base de datos 4-11 seleccionar en el men BASE_DATOS 4-11 BYTE, tipo de datos 5-39
C
caracterstica, iconos xi caractersticas nuevas de este producto ix cerrar una base de datos con la opcin Desconectar 6-6 con transacciones activas 6-6 desde un men 4-12 clusula USER de la sentencia CONNECT en modalidad interactiva de DB-Access 1-22 clave externa, restricciones definir 5-28 habilitar supresiones en cascada 5-29 informacin sobre 5-44 clave primaria, restricciones definir 5-27 informacin sobre 5-45 CLOB, tipo de datos 5-39 CLOSE DATABASE, sentencia 4-13 cdigo de ejemplo, convenios de xv cdigo SQL xv coleccin de datos, tipo 5-40 LIST 5-41 MULTISET 5-41 SET 5-40 columna definir 5-6 eliminar de una tabla con el editor de esquemas 5-13 eliminar del esquema 5-13 indexar 5-10 modificar 5-12
columna (continuacin) permitir valores nulos con el editor de esquemas 5-11 restricciones para 5-26 tipo por omisin nulo 5-34 tipos de datos aadir 5-7 descripcin 4-13, 5-49 seleccin 5-7 validacin de datos de valores por omisin 5-35 valor literal por omisin 5-34 valor por omisin nulo 5-34 visualizar informacin con la opcin Columnas 5-38 visualizar tipo de datos y nulos con la opcin Info 5-38 comentario, iconos x COMMIT 4-13 COMMIT, sentencia 4-13 cmo utilizar el terminal 2-2 conectar a entorno de base de datos en modalidad de fondo 1-22 conectarse a un entorno de bases de datos 6-1 conexin enviar resultados de consulta a 3-15 redirigir resultados de consulta a un programa 3-14 CONEXIN, men 6-1, 6-2 CONTRASEA, pantalla de solicitud 6-3 NOMBRE DE USUARIO, pantalla de solicitud 6-2 opciones 1-15 conexiones leer en 1-21 confirmar transacciones con el men TRANSACCIN 4-13, 6-6 conformidad con los estndares de la industria xviii conjunto de cdigos ISO 8859-1 ix CONNECT, sentencia 1-21 consejo, iconos xi consulta almacenar resultados en un archivo nuevo 3-15 aadir resultados a un archivo existente 3-15 enviar resultados a un archivo 3-14 enviar resultados a una conexin 3-15
consulta (continuacin) enviar resultados a una impresora 3-14 contacto, informacin xix CONTRASEA, pantalla de solicitud 6-3 contrasea, solicitar en modalidad interactiva de DB-Access 1-22 CONTROL, tecla 2-2 CONTROL-A 3-5 CONTROL-D 1-20, 3-5 CONTROL-R 3-5 CONTROL-W 2-5, A-1 CONTROL-X 3-5 convenios anotacin de sintaxis xi ayuda en lnea A-1 diagramas de sintaxis xi documentacin ix convenios de cdigo de ejemplo xv convenios de la lnea de mandatos cmo leer xiv diagrama de ejemplo xiv Crear, opcin del men TABLA 5-3 CREAR BASE_DATOS, men 4-5 CREAR TABLA, men 5-5 crear esquema al salir 5-12 opcin Modificar, cambiar una columna 5-12 salir 5-12 crear una base de datos desde un men 4-4 restricciones en denominacin 4-4 crear una tabla con el editor de esquemas 5-3 fragmentada (men EXPRESIN) 5-17 fragmentada (men ROUND_ROBIN) 5-16 cursor donde se visualiza en pantalla de entrada de texto 2-5 mover en la pantalla de terminal 2-2 posicin al utilizar el editor de SQL 3-5
CH
CHAR, tipo de datos 5-39 CHARACTER VARYING, tipo de datos 5-39 chmod, mandato 1-10
X-2
D
DATE, tipo de datos 5-39 DATETIME, tipo de datos 5-39 datos, ver la pgina siguiente en la pantalla 3-10 DB-Access jerarqua de mens 1-3 NOMBRE DE USUARIO, pantalla de solicitud 6-2 qu es 1-1 variables de entorno que afectan 1-4 DB-Access, programa de utilidad 1-6 dbaccess, invocar 1-10 DBACCNOIGN, variable de entorno 1-5 DBEDIT, variable de entorno 1-5 DBFLTMASK, variable de entorno 1-5 DBPATH, variable de entorno 6-4 DECIMAL, tipo de datos 5-39 DELIMIDENT, variable de entorno 1-5, 1-6 dependencias de software ix desconectarse de un entorno de base de datos 6-5 diagramas de sintaxis convenios para xi palabras clave en xiv variables en xiv directorio de trabajo 1-8 documentacin, tipos de xv notas de la documentacin xvii notas de mquina xvii notas del release xvii
E
editor crear sentencias de SQL nuevas 3-5 entrar valores de literal 5-34 modificar sentencias de SQL 3-12 restricciones 3-6 texto 2-6 editor de esquemas crear una tabla 5-6 definir una columna 5-6 eliminar una columna de una tabla 5-13 SALIR, men 5-12 editor de SQL asignar tipo de datos por omisin para columna 5-34
editor de SQL (continuacin) cmo utilizar 3-5 modificar sentencias de SQL 3-12 restricciones de edicin 3-6 sentencias de SQL nuevas 3-5 tecla de edicin CONTROL-A 3-5 tecla de edicin CONTROL-D 3-5 tecla de edicin CONTROL-R 3-5 tecla de edicin CONTROL-X 3-5 tecla ESC 3-5 teclas de edicin 3-5 editor de texto cmo utilizar 2-6 editor de SQL 3-7 editor interno 3-7 ejecutar sentencias de SQL cuando hay errores 3-11 cuando no hay errores 3-7 eliminar un archivo de mandatos confirmar la decisin 3-21 de un men 3-20 eliminar una base de datos de un men 4-11 eliminar una sentencia de SQL confirmar la decisin 3-21 de un men 3-20 eliminar una tabla confirmar la decisin 5-49 desde un men 5-48 en cascada, habilitar supresiones 5-29 en lnea, ayuda xvi en lnea, manuales xvi entorno local ix en_us.8859-1 ix por omisin ix entorno local en_us.8859-1 ix entorno local por omisin ix entrada interactiva 1-20 leer del estndar 1-20 entrada estndar (stdin), para entrada interactiva 1-20 entrada interactiva, mediante entrada estndar 1-20 errores conectarse a un servidor despus de abrir una base de datos 6-5 corregir con el editor de SQL 3-12
errores (continuacin) editar en sentencias de SQL 3-13 ejecutar archivos de mandatos B-1 ejecutar sentencias de SQL 3-11 entrar un factor de llenado 5-11 modificar una restriccin 5-32 sin permiso de conexin 6-4 utilizar opciones de la lnea de mandatos 1-17 ESCAPE, tecla 2-3, 3-5 espacio DB almacenar una base de datos 4-5 ALTERAR FRAGMENTO, men 5-19 definir expresin para 5-18 especificar para almacenamiento de tabla 5-14 fragmentacin en rueda con 5-16 modificar actual 5-17 SELECCIONAR DBSPACE, pantalla 4-5 suprimir de estrategia existente 5-17 espacio de Blob aadir columna para 5-9 especificar para datos TEXT o BYTE 5-9 tipos de datos en pantalla columnas 5-39 espacio de disco, gestionar con la pantalla Tamao extensin 5-24 esquema, crear tabla con 5-12 esquema de informacin 1-18 estrategia de fragmentacin en rueda en DB-Access 5-19 men sin estrategia en DB-Access 5-23 exclusivas, restricciones definir 5-31 validacin de datos 5-32 expresin, estrategia EXPRESIN, men 5-17 men DEFINIR POSICIN DE UNIN 5-22 men EDITAR EXPRESIN 5-18 men FRAGMENTAR 5-16 men UNIR TABLAS 5-21 pantalla NUEVA TABLA 5-23 pantalla SELECCIONAR TABLA DE UNIN 5-21
ndice
X-3
extensin, tamao
5-24
F
factor de llenado, especificar 5-11 fecha del sistema, guardar en una columna 5-34 Fila, opcin (men MODO BLOQUEO) 5-25 fila, tipo de datos definido 5-41 finderr, programa de utilidad xviii FLOAT, tipo de datos 5-39 Fragmentar men ALTERAR FRAGMENTO de DB-Access 5-19 men EXPRESIN en DB-Access 5-17 men FRAGMENTAR de DB-Access 5-15 men ROUND_ROBIN en DB-Access 5-16 opcin del men ALMACENAMIENTO de DB-Access 5-15 FRAGMENTAR, llegar al men 5-15
G
GLS (Global Language Support Soporte de idioma global) ix visualizar informacin sobre 4-8 GRANT, sentencia 1-10 grupo de programas notas de la documentacin xvii notas del release xvii guardar archivos de mandatos 3-17
I
iconos aviso xi caracterstica xi consejo xi importantes xi plataforma xi producto xi ID de fila, aadir o eliminar 5-26 ID de usuario, guardar en una columna 5-34 imprimir los resultados de una consulta 3-14 incorporado, tipo de datos 5-39 indexar una columna, la pantalla AGREGAR NDICE 5-10 ndice crear con la pantalla AGREGAR NDICE 5-10 de DataBlade 5-42
ndice (continuacin) definido por el usuario 5-42 especificar un factor de llenado 5-11 mtodo de acceso 5-42 permitir valores duplicados 5-10 industria, conformidad con los estndares de la xviii INFO, men Columnas, opcin 5-38 con SQL 5-37 listar tablas 5-38 opcin de fragmentacin 5-47 opcin del men TABLA 5-36 opcin Disparador 5-46 opcin Privilegios 5-42 opcin resTricciones 5-43 opciones disponibles 5-37 Referencias, opcin 5-43 salir 3-19, 5-38 visualizar informacin de columna 5-37 visualizar informacin de ndice de tabla 5-41 visualizar informacin de privilegios de tabla 5-42 visualizar informacin de restricciones 5-43 INFO BASE DATOS, men cmo salir 4-7 opcin dBspaces 4-8 opcin Rutinas 4-9 opciones 4-7 informacin visualizar para base de datos actual 4-6 visualizar para la sesin actual 6-6 visualizar para tablas 3-18, 5-36 informacin de base de datos espacios DB 4-8 rutinas 4-9 Informar, opcin Columnas, opcin 5-38 opcin Disparador 5-46, 5-47 opcin ndices 5-41 opcin Privilegios 5-42 opcin resTricciones 5-43 opcin Tabla 5-38 Referencias, opcin 5-43 Salir, opcin 5-38 TABLA, men 5-3 INFORMAR SOBRE TABLA, pantalla 5-36 INFORMIXDIR/bin, directorio 1-7
INT8, tipo de datos 5-39 INTEGER, tipo de datos 5-39 interrupcin, tecla 2-3 INTERVAL, tipo de datos 5-39 INTRO, tecla 2-3 invocar DB-Access comprobar la conformidad con ANSI 1-19 ejecutar un archivo de mandatos 1-18 opciones de lnea de mandatos 1-10 opciones del men BASE_DATOS 1-15 opciones del men SQL 1-16 opciones del men TABLA 1-17 visualizar el men principal 1-12 ISO 8859-1, conjunto de cdigos ix
L
la ventana de mandato no debe tener barras de desplazamiento 1-12 leer de la entrada estndar 1-20 lnea de mandatos caractersticas adicionales 1-20 entrada interactiva mediante entrada estndar 1-20 leer de la entrada estndar 1-20 sintaxis para invocar DB-Access 1-12 utilizar el distintivo -ansi 3-8 LIST , tipo de datos 5-41 literal, asignar valor por omisin 5-34
M
mensaje de error configuracin de terminal 1-11 men principal RDSQL, opcin 3-3 seleccionar la opcin Conexin 6-1 seleccionar la opcin Sesin 6-6 seleccionar la opcin Tabla 5-2 visualizar desde la lnea de mandatos 1-12 mens ACTIVAR ELIMINACIN EN CASCADA 5-29 AGREGAR NULLS 5-11 AGREGAR TIPO 5-7 AGREGAR TIPO POR DEFECTO 5-34
X-4
mens (continuacin) AGREGAR VALOR DE COMPROBACIN 5-30 AGREGAR VALOR POR DEFECTO 5-34 AYUDA 2-5 cmo salir 2-4 cmo seleccionar una opcin 2-4 CONEXIN 6-1 diagrama de 1-3 ejemplo 2-4 INFO 5-37 MODO BLOQUEO 5-25 OPC_TABLA 5-14 POR DEFECTO 5-33 REFERENCIA 5-44 RESTRICCIN DE VERIFICACIN 5-30 RESTRICCIN NICA 5-31 RESTRICCIONES 5-26, 5-44 TRANSACCIN 4-12, 6-6 mtodo de acceso, ndice 5-42 modalidad bloquear 5-25 insercin 3-5 sobreescritura 3-5 modalidad de bloqueo, especificar pgina o fila 5-25 Modif, opcin (men SQL) 3-12 MODO BLOQUEO, men 5-25 MONEY, tipo de datos 5-39 MULTISET, tipo de datos 5-41
O
objetos grandes definidos 5-39 inteligentes 5-39 simples 5-39 opaque, tipo de datos 5-40 OPC_TABLA, men 5-14 Opc_tabla, opcin (men CREAR TABLA) 5-5 opcin Borrar pantalla de confirmacin para eliminar archivos de mandatos 3-21 SQL, men 3-20 opcin Ejec opcin Prxima para ver datos 3-11 opcin Rehacer para volver a visualizar resultados 3-11 Salir, opcin 3-11, 5-47 SQL, men 3-7 opcin Guardar normas para denominar archivos guardados 3-18 SQL, men 3-17 opcin Info BASE_DATOS, men 4-6 SQL, men 3-18 opciones Vase tambin opciones de mandatos de dbaccess cmo obtener ayuda para 2-5 cmo seleccionar en un men 2-4 para men BASE_DATOS 4-2 para men CONEXIN 6-2 para men SQL 3-4 para men TABLA 5-3 opciones de lnea de mandatos, visualizar el men principal 1-12 opciones de mandatos Vase opciones de mandatos de dbaccess opciones de mandatos de dbaccess -ansi 1-13 -c 1-14 -cc 1-15 -cd 1-15 -d 1-14 -dc 1-15 -dd 1-15 -di 1-15 -dl 1-16 -ds 1-16 -e 1-14
N
NCHAR, tipo de datos 5-39 negrita x nombre de columna 5-7 nombre de usuario especificar al conectarse en modalidad de fondo 1-22 sentencia CONNECT con 1-22 NOMBRE DE USUARIO, pantalla de solicitud 6-2 nombre sitio, guardar en una columna 5-34 notas de documentacin, elemento de programa xvii notas de la documentacin xvii notas de mquina xvii notas del release xvii nuevas caractersticas de este producto ix NVARCHAR, tipo de datos 5-39
opciones de mandatos de dbaccess (continuacin) -m 1-14 -q 1-14 -qc 1-16 -qd 1-16 -qi 1-16 -qm 1-16 -qn 1-16 -qs 1-16 -qu 1-16 -s 1-14 -t 1-14 -ta 1-17 -tc 1-17 -td 1-17 -ti 1-17 -v o -V 1-14 -X 1-14 base de datos 1-14 nombrearchivo 1-14 opcin_men_base_datos 1-15 opcin_men_conexin 1-14 opcin_men_consulta 1-15 opcin_men_tabla 1-15 tabla 1-14 opciones de men BASE_DATOS, men 4-2 CONEXIN, men 6-2 SQL, men 3-4 TABLA, men 5-3 Out, opcin Impresora, opcin 3-14 opcin Agregar-fichero 3-15 opcin Nuevo-fichero 3-14 opcin Pipe 3-15 SQL, men 3-14
P
Pgina, opcin (men MODO BLOQUEO) 5-25 palabras clave en diagramas de sintaxis xiv pantalla de confirmacin crear una base de datos 4-6 eliminar un archivo de mandatos 3-21 eliminar una base de datos 4-12 pantallas AGREGAR PORCENTAJE DE FACTOR DE LLENADO 5-11 cmo entrar texto 2-5 cmo salir 2-5 confirmacin de DESCONECTAR 6-5
ndice
X-5
pantallas (continuacin) CREAR BASE_DATOS, confirmacin 4-6 ejemplo 2-4 estructura de cabecera 2-5 INFORMAR SOBRE TABLA 5-36 para entrada de texto 2-4 para men BASE_DATOS 4-1, 4-11 para men SQL 3-3, 3-21 para men TABLA 5-2 SELECCIONAR BASE_DATOS 6-4 SELECCIONAR BLOBSPACE 5-9 SELECCIONAR DBSPACE 5-15 SELECCIONAR PROCEDIMIENTO 4-10 SELECCIONAR RUTINA 4-10 SELECCIONAR SERVIDOR BASE_DATOS 6-3 TRAER 3-16 prrafos importantes, icono para xi PATH base de datos de demostracin y 1-8 requisitos de DB-Access 1-5 permisos de UNIX 1-8 plataforma, iconos xi POR DEFECTO, men 5-33 procedimientos almacenados pantalla SELECCIONAR PROCEDIMIENTO 4-10 producto, iconos xi
R
RDSQL, opcin cmo utilizar 3-4 del men principal 3-3 RDSQL, opciones del men REFERENCIA, men con informacin de referencia 5-45 con informacin referenciada 5-45 opciones 5-44 REGISTRAR, men 4-5 Release notes, elemento de programa xvii requisitos del sistema base de datos ix software ix 1-16
resolucin de problemas el mandato Traer no lista los archivos de mandatos de SQL 3-17 la ventana de dbaccess no debe tener barras de desplazamiento 1-12 resolucin de problemas, tipo de terminal desconocido 1-11 RESTRICCIN DE VERIFICACIN, men 5-30 RESTRICCIN NICA, men 5-31 restricciones aadir con CREAR TABLA 5-26 clave externa, definir 5-28 clave externa, informacin sobre 5-44 clave primaria, definir 5-27 clave primaria, informacin sobre 5-45 comprobacin, definir 5-29 definir 5-26 exclusivas, definir 5-31 habilitar supresiones en cascada 5-29 referencia, informacin sobre 5-44 valores por omisin, definir 5-32 visualizar 5-43 RESTRICCIONES, men mostrado 5-26, 5-44 opcin Primaria 5-45 opcin Referencia 5-44 opciones en 5-43 restricciones para el editor de SQL 3-6 retrotraer transacciones 4-13, 6-6 retrotraer transacciones, con el men TRANSACCIN 6-6 ROLLBACK 4-13 Round-robin, estrategia men FRAGMENTAR 5-16 men ROUND_ROBIN 5-16 rutinas almacenadas 3-24 archivo de mandatos de demostracin 3-22 crear y ejecutar 3-21 SELECCIONAR RUTINA, pantalla 4-10 tabla de catlogo de sistema sysprocedures 3-22 visualizar lista de 4-9 visualizar texto de 4-9
rutinas SPL
3-21
S
sales_demo 1-7 Salir, opcin BASE_DATOS, men 4-2 CREAR BASE_DATOS, men 4-6 CREAR TABLA, men 5-12 INFO BASE DATOS, men 4-7 MODO BLOQUEO, men 5-25, 5-26 pantalla EJEC 3-11 pantalla EJEC. 5-47 REGISTRAR, men 4-6 SQL, men 3-4 TABLA, men 5-3, 5-6 SELECCIONAR BASE_DATOS, pantalla 6-4 dos modos de seleccionar una base de datos 4-4 salir sin seleccionar una base de datos 6-5 seleccionar en el men BASE_DATOS 4-2 SELECCIONAR BLOBSPACE, pantalla 5-9 SELECCIONAR DBSPACE, pantalla 5-15 SELECCIONAR RUTINA, pantalla 4-9 SELECCIONAR SERVIDOR BASE_DATOS, pantalla 6-2, 6-3 seleccionar un servidor de bases de datos 6-2 seleccionar una base de datos, en un men 4-2 sentencia actual, definicin de 3-2 sentencias de SQL actuales definidas 3-2 aadir resultados de consulta a un archivo existente 3-15 convenios de sintaxis para la ayuda en lnea A-1 editar 3-2 editar con el editor del sistema 3-2 ejecutar desde la entrada estndar 1-21 elegir un archivo de mandatos 3-16 eliminar 3-20 entrada interactiva en terminal 1-20
X-6
sentencias de SQL (continuacin) entrar nuevas con el editor de SQL 3-5 enviar resultados de consulta a una conexin 3-16 enviar salida a un archivo 3-14 enviar salida a una impresora 3-14 guardar en un archivo de mandatos 3-17 leer de la entrada estndar 1-20 modificar 3-12 qu sucede cuando no hay errores 3-11 redirigir resultados de consulta 3-14 seleccionar la pantalla GRABAR 3-17 SERIAL, tipo de datos 5-39 SERIAL8, tipo de datos 5-39 servidor de bases de datos conectar a 6-2 desconectar implcitamente 6-5 desconectarse de 6-5 nombre, guardar en columna 5-34 pantalla SELECCIONAR SERVIDOR BASE_DATOS 6-2 seleccionar en un men 6-2 sesin, informacin 6-6 SET, tipo de datos 5-40 shell Bourne 1-21 C 1-21 Korn 1-21 SMALLFLOAT, tipo de datos 5-39 SMALLINT, tipo de datos 5-39 software, dependencias ix Soporte de idioma nativo orden de lista de archivos de mandatos 3-16 visualizar informacin sobre 4-8 SQL cmo leer la sintaxis en las pantallas de ayuda en lnea A-1 entrar sentencias 3-4 equivalente de sentencia INFO 3-18 utilizar desde un men 3-10 SQL, men ejecutar sentencias de SQL nuevas 3-7 opcin Borrar 3-20 opcin Ejec 3-7
SQL, men (continuacin) opcin Guardar 3-17 opcin Info 3-18 opcin Modif 3-12 opcin Traer 3-16 opciones disponibles 3-4 Out, opcin 3-14 OUTPUT, men 3-14 pantalla GRABAR 3-17 seleccionar opciones en la lnea de mandatos 1-16 TRAER, pantalla 3-16 sqlhosts, visualizar informacin de conectividad en 6-3 stores_demo 1-6, 1-7 superstores_demo 1-7 supresiones en cascada, habilitar 5-29 SUPRIMIR, tecla 2-3
T
tabla crear esquema 5-12 eliminar 5-48 eliminar una columna (editor de esquemas) 5-13 eliminar una columna del esquema 5-13 espacio DB para almacenar 5-14 establecer la modalidad de bloqueo 5-14 establecer los tamaos de extensin 5-14 herencia B-15 indexar una columna (editor de esquemas) 5-10 informacin de activadores 5-46, 5-47 informacin de columna 5-38 informacin de ndice 5-41 informacin de privilegios 5-42 informacin de restriccin de clave externa 5-44 informacin de restriccin de clave primaria 5-45 informacin de restricciones 5-43 modalidad de bloqueo para 5-25 modificar antes de crear 5-12 modificar una columna (editor de esquemas) 5-12 pantalla de activadores 5-47
tabla (continuacin) pantalla SELECCIONAR TABLA DE UNIN (fragmentacin de expresin) 5-21 permitir valores nulos en una columna 5-11 tamaos de extensin para 5-24 ubicacin de almacenamiento para 5-14 visualizacin de privilegios 5-42 visualizacin de referencias 5-43 visualizacin de restricciones de columna 5-43 visualizar de otro servidor 5-36 visualizar informacin con la opcin Disparador 5-46 visualizar informacin en la pantalla 3-18, 5-36 TABLA, men directrices para utilizar 5-2 Informar, opcin 5-36 opciones 1-17 opciones disponibles 5-3 seleccionar la opcin Borrar 5-48 seleccionar la pantalla CREAR TABLA 5-3 seleccionar opciones en la lnea de mandatos 1-17 tamao establecer extensin inicial 5-24 establecer siguiente extensin 5-24 tecla RETROCESO 2-2 teclas BARRA ESPACIADORA 2-3 CONTROL 2-2 CONTROL-A 3-5 CONTROL-D 1-20, 3-5 CONTROL-R 3-5 CONTROL-W 2-5, A-1 CONTROL-X 3-5 ESCAPE 2-3, 3-5 flecha 2-2 interrupcin 2-3 INTRO 2-3 RETROCESO 2-2 SUPRIMIR 2-3 utilizadas con el editor de SQL 3-5 teclas de flecha 2-2 terminal cmo utilizar las teclas 2-2 Terminal como entrada estndar 1-20
ndice
X-7
TEXT, tipo de datos 5-39 texto cmo entrar en una pantalla 2-5 editar con el editor del sistema 3-2 Tipo de datos diferenciado B-15 tipos de datos aadir columna 5-7 BLOB 5-39, B-15 BOOLEAN 5-39, B-15 BYTE 5-39 CLOB 5-39, B-15 coleccin 5-40, B-15 CHAR 5-39 CHARACTER VARYING 5-39 DATE 5-39 DATETIME 5-39 DECIMAL 5-39 definir para una columna con el editor de esquemas 5-7 descripcin 4-13, 5-49 diferenciados B-15 fila 5-41, B-15 FLOAT 5-39 incorporados 5-39 INT8 5-39 INTEGER 5-39 INTERVAL 5-39 LIST 5-41, B-15 MONEY 5-39 MULTISET 5-41 NCHAR 5-39 NVARCHAR 5-39 opaque 5-40 opciones del men AGREGAR TIPO para 5-7 SERIAL 5-39 SERIAL8 5-39, B-15 SET 5-40, B-15 SMALLFLOAT 5-39 SMALLINT 5-39 TEXT 5-39 VARCHAR 5-39 tipos de datos ampliados 5-8 tipos de datos definidos por el usuario 5-8 Traer, opcin (men SQL) 3-16 TRAER, pantalla 3-16 TRANSACCIN, men 4-12, 6-6 transacciones, confirmar o retrotraer 4-12
UNIX (continuacin) editores de sistema 3-3 permisos 1-8 sensibilidad a maysculas y minsculas y nombres de archivo 3-18 UNIX, sistema operativo entorno local por omisin para ix usuarios, tipos de viii
V
validacin de datos restricciones exclusivas 5-32 valores de columna por omisin 5-35 valor de SQLSTATE visualizado 1-19 valor por omisin AGREGAR TIPO POR DEFECTO, men 5-34 AGREGAR VALOR POR DEFECTO, men 5-34 columna, aadir 5-33 columna, validacin de datos 5-35 definir valores para columnas 5-32 editor del sistema operativo 3-3 eliminar una clave externa 5-29 eliminar una restriccin de comprobacin 5-30 espacio DB para datos de base de datos 4-5 impresora, enviar salida a 3-14 longitud, para tipo de datos CHAR 5-10 longitud, para tipo de datos MONEY 5-10 longitud, para tipo de datos NCHAR 5-10 longitud y escala, para tipo de nmero 5-10 nmero, para tipo de datos SERIAL 5-10 para el men MODO BLOQUEO 5-25 para men REGISTRAR 4-5 para pantalla AGREGAR DUPLICADOS 5-10 para pantalla AGREGAR NOMBRE 5-6 para pantalla de confirmacin BORRAR FICHERO COMANDO 3-21
valor por omisin (continuacin) para pantalla de confirmacin CREAR BASE_DATOS 4-6 para pantalla de confirmacin de BORRAR TABLA 5-49 para pantalla de confirmacin DESCONECTAR 6-6 para salir del men CREAR BASE_DATOS 4-6 servidor de bases de datos, seleccionar 6-3 tamao de extensin inicial 5-25 tipo de columna, nulo 5-34 ubicacin de almacenamiento de tabla 5-15 valores de columna 5-34 valores de columna, definir 5-32 valores de columna, validacin de datos 5-35 valores de columna, visualizar 3-18 valores de ao, dos y cuatro dgitos 1-5 valores nulos especificar con el men AGREGAR NULLS 5-11 valor por omisin para columna 5-34 VARCHAR, tipo de datos 5-39 variables, en diagramas de sintaxis xiv variables de entorno DBACCNOIGN 1-5 DBANSIWARN 1-19, 3-8 DBEDIT 1-5 DBFLTMASK 1-5 DBPATH 3-16, 4-3 DELIMIDENT 1-6 establecer para editor por omisin 3-2 LC_COLLATE 3-16 ONCONFIG 4-3
W
Windows NT entorno local por omisin para ix
X
X/Open, nivel de conformidad xviii
U
UNIX chmod, mandato 1-10
X-8
G210-0111-00