Ejemplos de base de datos y creación de tablas

Los siguientes ejemplos utilizan la palabra clave create para crear la base de datos de muestra staff y definir las tablas.

Estas sentencias OQL de ejemplo ilustran el uso de las restricciones de columna y palabra clave predeterminada.

Ejemplo 1

create database staff;          // creates the staff database

La siguiente inserción define la tabla managers.

create table staff.managers
(
        EmployeeID                       int   NOT NULL   PRIMARY KEY,
        Name                             text  NOT NULL,
        Department                       text  default "Sales", 
        Gender                           text,
        Age                              int,
        unique ( EmployeeID )         // indicates that the data in the 
                                      // EmployeeID column must be unique.
);

Para la tabla managers:

  • Las columnas EmployeeID y Name no pueden ser NULL.
  • La columna EmployeeID es la clave primaria y debe ser exclusiva.
  • Si no se inserta ningún valor en la columna Department para un registro determinado toma el valor "Sales".

Ejemplo 2

La siguiente inserción crea la tabla staff.employees.

create table staff.employees
(
        EmployeeID              int             NOT NULL   PRIMARY KEY,
        Name                    text            NOT NULL,
        Skills                  list type text,
        Gender                  text,
        Age                     int   // There is no comma here because this
                                      // is the last entry.
);

Para la tabla staff.employees:

  • Las columnas EmployeeID y Name no pueden ser NULL.
  • La columna Skills es una lista de series de texto.

Ejemplo 3

La siguiente inserción crea la tabla staff.contractors.

create table staff.contractors
(
        EmployeeID             int NOT NULL PRIMARY KEY,
        Name                   text NOT NULL,
        Gender                 text,
        Age                    int,
        ExtraInfo              object type vblist,
        volatile
);

Para la tabla staff.contractors:

  • La columna ExtraInfo contiene una lista de varbinds.