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
En el Diseñador de tablas, elija un tipo de datos en la lista Tipo.
–O bien–
Utilice el comando CREATE TABLE.
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
En el Diseñador de tablas, seleccione la columna Null para todos los campos de la tabla.
–O bien–
Utilice el comando SET NULL ON antes del comando CREATE TABLE.
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
Seleccione el campo en el Diseñador de tablas.
Escriba el texto de su comentario en el cuadro Comentario de campo.
Elija Aceptar.
–O bien–
- Use la función DBSETPROP( ).
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