Lección 1.2: crear una tabla

Puede crear tablas y otros objetos de base de datos interactivamente emitiendo sentencias SQL desde SPUFI. En esta lección, creará un tabla nueva que tenga el mismo formato y contiene los mismos datos que la tabla EMP de ejemplo consultada en la lección anterior. En la lección siguiente, puede modificar datos en la tabla nueva creada, sin realizar ningún cambio en los datos de ejemplo original.

Antes de empezar

Completar la lección 1.1: Consultar datos de forma interactiva. La lección 1.2 se basa en lo aprendido en la lección anterior.

Procedimiento

  1. Abra DB2I, configure el ID del subsistema y abra el conjunto de datos USER.SRCLIB.TUTORIAL (SQLTEXT ) en SPUFI tal y como se describe en los pasos 1-5 de la lección 1.1: Consulta de datos de forma interactiva.
  2. Si el conjunto de datos contiene sentencias de la lección anterior, coméntelas añadiendo dos guiones al principio.
  3. Cree una tabla y añada filas en ella emitiendo sentencias SQL.
    1. En el panel Editar, escriba una instrucción CREATE TABLE y una instrucción INSERT. Para obtener más información sobre la sintaxis y las opciones de estas instrucciones SQL, consulte la instrucción CREATE TABLE y la instrucción INSERT.
      Por ejemplo, la siguiente instrucción CREATE crea una tabla llamada MY_EMP bajo su ID de autorización, que tiene el mismo formato y contiene los mismos datos que la tabla de muestra DSN8C10.EMP. La sentencia INSERT siguiente, añade filas a la tabla MY_EMP. Para obtener más información sobre los datos de la tabla EMP de la base de datos de ejemplo, consulte Tabla de empleados ( DSN8C10.EMP ).
         File  Edit  Edit_Settings  Menu  Utilities  Compilers  Test  Help            
       
       EDIT       USER.SRCLIB.TUTORIAL(SQLTEXT) - 01.25           Columns 00001 00072 
       Command ===>                                                  Scroll ===> PAGE 
       ****** ***************************** Top of Data ******************************
       000100                                                                         
       000101 --SELECT * FROM DSN8C10.EMP;                                             
       000102 --SELECT EMPNO, SALARY + COMM AS TOTAL_SAL;                              
       000103   --FROM DSN8C10.EMP                                                    
       000104   --ORDER BY TOTAL_SAL;                                                  
       000110    CREATE TABLE MY_EMP LIKE DSN8C10.EMP;                                
       000200    INSERT INTO MY_EMP                                                   
       000300       SELECT * FROM DSN8C10.EMP;                                        
       000400                                                                         
       000500                                                                         
       000600                                                                         
       ****** **************************** Bottom of Data ****************************
                                                                                      
        F1=Help      F2=Split     F3=Exit      F5=Rfind     F6=Rchange   F7=Up        
        F8=Down      F9=Swap     F10=Left     F11=Right    F12=Cancel                 
    2. Para emitir las sentencias, pulse PF3 y, a continuación, pulse Intro.
      La tabla se crea, las filas se inserta y se muestra el resultado siguiente.
         Menu  Utilities  Compilers  Help                                             
       
       BROWSE    TUTOR01.MYOUTPUT                           Line 00000000 Col 001 080 
       Command ===>                                                  Scroll ===> PAGE 
      ********************************* Top of Data **********************************
      ---------+---------+---------+---------+---------+---------+---------+---------+
                                                                              00010023
      --SELECT * FROM DSN8C10.EMP                                             00010125
      --SELECT EMPNO, SALARY + COMM AS TOTAL_SAL                              00010225
      --FROM DSN8C10.EMP                                                      00010326
      --ORDER BY TOTAL_SAL                                                    00010426
         CREATE TABLE MY_EMP LIKE DSN8C10.EMP;                                00011027
      ---------+---------+---------+---------+---------+---------+---------+---------+
      DSNE616I STATEMENT EXECUTION WAS SUCCESSFUL, SQLCODE IS 0                       
      ---------+---------+---------+---------+---------+---------+---------+---------+
         INSERT INTO MY_EMP                                                   00020027
            SELECT * FROM DSN8C10.EMP;                                        00030027
      ---------+---------+---------+---------+---------+---------+---------+---------+
      DSNE615I NUMBER OF ROWS AFFECTED IS 42                                          
      DSNE616I STATEMENT EXECUTION WAS SUCCESSFUL, SQLCODE IS 0                       
      ---------+---------+---------+---------+---------+---------+---------+---------+
        F1=Help    F2=Split   F3=Exit    F5=Rfind   F7=Up      F8=Down    F9=Swap     
       F10=Left   F11=Right  F12=Cancel                                               
      Recuerde : En la lección 1.1, aprendió que puede utilizar cualquier mensaje y código que se emita para solucionar problemas con sus extractos.
  4. Pulse PF3 para volver a SPUFI.
    Para recordar el patrón que sigue para emitir sucesivas sentencias SQL desde SPUFI, consulte el consejo del paso 9 de la lección anterior.
  5. Emita una sentencia SELECT para verificar que la tabla se ha creado y que contiene los datos insertados.
    Por ejemplo, la consulta siguiente devuelve todas las filas de la tabla que ha creado:
       Menu  Utilities  Compilers  Help                                             
     
     BROWSE    TUTOR01.MYOUTPUT                           Line 00000000 Col 001 080 
     Command ===>                                                  Scroll ===> PAGE 
    ********************************* Top of Data **********************************
    ---------+---------+---------+---------+---------+---------+---------+---------+
                                                                            00010023
    --SELECT * FROM DSN8C10.EMP                                             00010125
    --SELECT EMPNO, SALARY + COMM AS TOTAL_SAL                              00010225
    --FROM DSN8C10.EMP                                                      00010326
    --ORDER BY TOTAL_SAL                                                    00010426
    -- CREATE TABLE MY_EMP LIKE DSN8C10.EMP;                                00011029
    -- INSERT INTO MY_EMP                                                   00020029
    --    SELECT * FROM DSN8C10.EMP;                                        00030029
                                                                            00040026
       SELECT * FROM MY_EMP;                                                00050028
    ---------+---------+---------+---------+---------+---------+---------+---------+
    EMPNO   FIRSTNME      MIDINIT  LASTNAME         WORKDEPT  PHONENO  HIREDATE    J
    ---------+---------+---------+---------+---------+---------+---------+---------+
    000010  CHRISTINE     I        HAAS             A00       3978     1965-01-01  P
    000020  MICHAEL       L        THOMPSON         B01       3476     1973-10-10  M
      F1=Help    F2=Split   F3=Exit    F5=Rfind   F7=Up      F8=Down    F9=Swap     
     F10=Left   F11=Right  F12=Cancel                                               
  6. Pulse PF3 y, a continuación, pulse Intro para volver al panel Editar.

Resultados

En esta lección, ha aprendido a realizar las siguientes tareas interactivamente en SPUFI:

  • Creación de una tabla
  • Insertar filas de una tabla a otra
  • Verificar que la tabla nueva se ha creado y contiene datos

Qué hacer a continuación

Modificará datos en la tabla MY_EMP en la lección siguiente.