Share via


Elegir los tipos de datos

Al crear cada campo de una tabla, deberá elegir el tipo de los datos que ese campo va a almacenar. Al elegir el tipo de datos, decide lo siguiente:

  • La clase de valores que se van a permitir en el campo. Por ejemplo, no puede almacenar texto en un campo Numeric.

  • El espacio de almacenamiento que Visual FoxPro debe reservar para los valores almacenados en el campo. Por ejemplo, un valor con el tipo de datos Currency ocupará 8 bytes.

  • Los tipos de operaciones que pueden realizarse con los valores almacenados en el campo. Por ejemplo, Visual FoxPro puede determinar la suma de valores de tipo Numeric o de tipo Currency, pero no la de valores de tipo Character o General.

  • Si Visual FoxPro puede o no indizar u ordenar los valores del campo. No es posible ordenar ni crear índices para los campos de tipo Memo o General.

    Sugerencia   Para los números de teléfono, números de pieza y otros números que no vaya a utilizar en cálculos matemáticos, debe elegir el tipo de datos Character, en lugar de Numeric.

Elegir un tipo de datos

Cada campo de una tabla almacena un determinado tipo de datos. Puede establecer el tipo de datos de un campo a cualquiera de los que se muestran en la tabla siguiente.

Tipo de datos Descripción Ejemplo
Character Texto alfanumérico La dirección de un cliente
Currency Unidades monetarias Precio de compra
Numeric Números enteros o decimales Cantidad de artículos pedidos
Float Igual que Numeric  
Date Día, mes y año Fecha en que se realizó un pedido
DateTime Día, mes, año, horas, minutos y segundos Fecha y hora en que un empleado llegó al trabajo
Double Número de precisión doble Datos procedentes de experimentos que requieren un elevado grado de precisión
Integer Valores numéricos no decimales (números enteros) Número de línea de un pedido
Logical Verdadero o Falso Campo que indica si se ha completado o no un pedido
Memo Texto alfanumérico de longitud indeterminada Notas de un registro telefónico sobre las llamadas
General OLE Hoja de cálculo de Microsoft Excel
Character (Binario) Igual que Character, pero los valores no se convierten cuando cambia la página de códigos Las contraseñas de usuario almacenadas en una tabla y usadas en distintos países/regiones
Memo (Binario) Igual que Memo, pero los valores no se convierten cuando cambia la página de códigos Un archivo de comandos de inicio de sesión empleado en distintos países/regiones

Para elegir el tipo de datos de un campo

Por ejemplo, para crear y abrir la tabla products con tres campos, prod_id, prod_name y unit_price, podría ejecutar el comando siguiente:

CREATE TABLE products (prod_id C(6), prod_name C(40), unit_price Y)

En el ejemplo anterior, la ‘Y’ que aparece después de unit_price especifica el tipo de datos Currency.

Agregar rápidamente un índice normal

Al agregar un campo, puede definir rápidamente un índice normal en el campo si especifica ascendente o descendente en la columna Índice del Diseñador de tablas. El índice que cree se agrega automáticamente a la ficha Índices y usa el campo como expresión. Para modificar el índice, puede pasar a la ficha Índices para cambiar el nombre de índice, el tipo o agregar un filtro.

Usar valores NULL

Al crear una tabla nueva, puede especificar si uno o más campos de la misma aceptarán valores NULL. Al usar un valor NULL, se indica que la información que normalmente se almacenaría en un campo o registro no está disponible en ese momento. Por ejemplo, las prestaciones sanitarias o el estado impositivo de un empleado pueden no estar determinados en el momento de llenar un registro. En lugar de almacenar un valor de cero o dejar los campos en blanco, lo que podría interpretarse de modo erróneo, puede almacenar en ellos un valor NULL hasta que la información correspondiente esté disponible.

Para controlar la entrada de valores NULL campo a campo

  • En el Diseñador de tablas, seleccione o desactive la columna Null del campo correspondiente.

    Cuando la columna Null está seleccionada, se pueden introducir valores NULL en el campo.

    –O bien–

  • Utilice las cláusulas NULL y NOT NULL del comando CREATE TABLE.

Por ejemplo, el comando siguiente crea y abre una tabla que no admite valores NULL en los campos cust_id y company, pero sí en el campo contact:

CREATE TABLE customer (cust_id C(6) NOT NULL, ;
   company C(40) NOT NULL, contact C(30) NULL)

También puede controlar si se admiten o no valores NULL en los campos de la tabla con el comando SET NULL ON.

Para permitir valores NULL en todos los campos de la tabla

Al especificar el comando SET NULL ON, Visual FoxPro marca automáticamente la columna NULL para cada campo de la tabla a medida que usted agrega campos en el Diseñador de tablas. Si ejecuta el comando SET NULL antes de CREATE TABLE, no será necesario especificar las cláusulas NULL o NOT NULL. Por ejemplo, el código siguiente crea una tabla que permite valores NULL en todos sus campos:

SET NULL ON
CREATE TABLE test (field1 C(6), field2 C(40), field3 Y)

La presencia de valores NULL afecta al comportamiento de las tablas y los índices. Por ejemplo, si utiliza APPEND FROM o INSERT INTO para copiar registros de una tabla que contiene valores NULL a otra que no los admite, los campos anexados que contengan valores NULL se considerarán en blanco, vacíos o con valor cero en la tabla actual.

Agregar comentarios a los campos

Una vez creada una tabla en una base de datos abierta, puede agregar una descripción de cada campo de la tabla para facilitar la comprensión y la actualización de la tabla. Visual FoxPro muestra el texto de comentario de los campos en el Administrador de proyectos cuando se seleccionan en la lista de campos de la tabla.

Para agregar un comentario a un campo de una tabla de base de datos

  1. Seleccione el campo en el Diseñador de tablas.

  2. Escriba el texto de su comentario en el cuadro Comentario de campo.

  3. Elija Aceptar.

    –O bien–

Por ejemplo, puede ser conveniente aclarar el contenido del campo unit_price de la tabla orditems con el comentario “Current retail price per unit” (Precio actual por unidad) como texto asociado al campo:

?DBSETPROP('orditems.price', 'field', 'comment', ;
          'Current retail price per unit')

Vea también

Asignar nombres a los campos | Crear valores predeterminados de campo | Trabajar con tablas | Diseñador de tablas | CREATE TABLE | Tipos de datos y campos | Tratamiento de valores NULL | Crear bases de datos | Restringir el acceso a los campos