3.298 cursos gratis
6.267.101 alumnos
Publica tu curso gratis
Busca cursos gratis:
Estás aquí: mailxmail > Cursos de Informática > Software > MySQL básico. Bases de datos y software libre (segunda parte) > MySQL. Otras restricciones

MySQL básico. Bases de datos y software libre (segunda parte)

Autor: Editorial McGraw-Hill
Curso: 4/5 4/5 (1 opinión) |769 alumnos|Fecha publicación: 30/10/2008

Capítulo 11:

 MySQL. Otras restricciones

Otras restricciones

En la definición de campo es posible incluir otras restricciones, además de las de clave. Las más importantes son:

- Valor único. En ocasiones interesa que un campo que no pertenece a una clave primaria tenga, de todas formas, un valor único para cada fila de la tabla. Podemos pensar, por ejemplo, en el NIF de un fichero de clientes. En estos casos se utiliza la cláusula UNIQUE. He aquí el resultado:

mysql> create table cliente
(idCli int(4)unsigned primary key,
CliNom varchar(25),
CliPob varchar(25),
CliNif varchar(15) unique);

- utoincrementable. Muchas veces la clave principal de una tabla es simplemente un código que no tiene mayor significado que la identificación de cada elemento. Si es así, puede ser interesante hacer que dicho código se vaya incrementando de forma automática cada vez que se da de alta una fila. Así, el primer cliente tendría el código 1, el segundo tendría el 2, y así sucesivamente,  sin intervención del usuario. Para ello se usa la cláusula AUTO INCREMENT en la definición del campo. He aquí el resultado:

mysql> create table cliente
(idCli int(4)unsigned primary key
auto_increment,
CliNom varchar(25),
CliPob varchar(25),
CliNif varchar(15) unique);

- Valor nulo. Cuando un campo es clave primaria, no puede tener en absoluto un valor nulo, es decir, dejarse sin valor (no se debe confundir con valor 0, o con espacios en blanco). Sin embargo, esa misma restricción puede aplicarse también a campos no clave, mediante la cláusula NOT NULL. Pensemos, por ejemplo, en que sea obligatorio poner un valor al NIF cuando se da de alta un cliente. He aquí el resultado:

mysql> create table cliente
(idCli int(4)unsigned primary key
auto_increment,
CliNom varchar(25),
CliPob varchar(25),
CliNif varchar(15) not null
unique);

- Valor por defecto. Al dar de alta una fila en una tabla, y antes de introducir algún valor, todos los campos tienen el valor NULL (vacío). A veces, existe un campo que tendrá siempre el mismo valor en todas las filas, salvo contadas excepciones. Por ejemplo, si en nuestro fichero de clientes sabemos que la gran mayoría son de Valencia, podemos hacer que el campo CliPob asuma, por defecto, el valor Valencia sin tener que escribirlo cada vez. Para ello, se usa la cláusula DEFAULT en la definición del campo. He aquí el resultado:

mysql> create table cliente
(idCli int(4)unsigned primary key
auto_increment,
CliNom varchar(25),
CliPob varchar(25) default
`Valencia´,
CliNif varchar(15) not null
unique);

Es interesante conocer una particularidad del tipo enum: al declarar el valor por defecto, si se pone éste entre comillas simples, hará referencia al elemento de la lista cuyo valor coincida con el indicado; si, por el contrario, el valor por defecto consiste en un número sin comillas simples, entonces se está haciendo referencia al número de orden en la lista de enum. Imaginemos que creamos una tabla de hoteles con un campo categoría cuyo valor puede ser 3, 4 o 5 y que queremos que, por defecto, asuma el valor 3. Esto se podría conseguir indistintamente mediante dos formas:

...categoría enum(`3´,´4´,´5´) default `3´
...categoría enum(`3´,´4´,´5´) default 1

En ambos casos, el valor por defecto será 3.

Capítulo anterior - Claves ajenas
Recibe nuestras novedades
Al presionar "Recibir" estás dándote de alta y aceptas las condiciones legales de mailxmail

Hay 1 opinión. Opina sobre este curso.


Cursos similares a MySQL básico. Bases de datos y software libre (segunda parte)


Cursos Valoración Alumnos Vídeo
Excel. Hojas de cálculo (tercera parte)
Curso del software Excel y formación ofimática. En esta tercera parte de nuestro curso de uso avanzado de hojas de cálculo de Excel aprenderás a modificar gráficos; conoc... [07/11/08]
 2,50/5 2.667  
Windows XP. Sistemas operativos (cuarta parte)
En esta cuarta parte de nuestro curso de informática sobre el Sistemas Operativo Windows XP aprenderás a cerca de los accesorios de Windows XP: las comunicaciones dentro ... [08/10/08]
5/5 3.618  
Confecciona tu propio Wiki con wiki.mailxmail.com
Crea tu página web y deja que cualquier visitante la enriquezca ¿Te gusta la idea detrás de la Wikipedia? ¿Te interesa volcar, en formato wiki, tu conocimien... [17/11/05]
5/5 1.128  


Publicar en   del.icio.us    digg    meneame

¿Qué es mailxmail.com?|ISSN: 1699-4914|Recomiéndanos|Ayuda
Condiciones legales de mailxmail