Documentos de Académico
Documentos de Profesional
Documentos de Cultura
software libre.
MySQL bsico 08
En esta Unidad
aprenders a:
Q Instalar, configurar y utilizar
el sistema gestor de bases de
datos MySQL.
225
8. Bases de datos y software libre. MySQL bsico
8.1 MySQL: un SGBD de cdigo abierto
226
8. Bases de datos y software libre. MySQL bsico
8.1 MySQL: un SGBD de cdigo abierto
A continuacin, se abrir una pgina donde aparece una La Web ha detectado, a travs de la IP de mi ordenador,
exposicin del producto, de las licencias de uso, de las que el servidor ms prximo y seguramente el que ms
novedades que ofrece la ltima distribucin disponible me interesa est en Espaa: se trata de RedIris. As
y, finalmente, una exhaustiva relacin de versiones a pues, elegiremos dicho servidor y, a continuacin, esco-
descargar, agrupadas por la plataforma a la que van diri- gemos la opcin de bajada por http pulsando en el
gidas (Linux, Solaris, Windows, etc.). Por nuestra parte, enlace correspondiente.
trabajaremos con la versin de Windows; por tanto, ire-
mos bajando la pgina hasta encontrar la seccin Win- Una vez elegida la opcin Guardar del cuadro de di-
dows Downloads (vase la Figura 8.3). logo, empezar la descarga del archivo.
Instalacin
En primer lugar, es importante tener en cuenta que el
fichero descargado slo sirve para actualizar versiones
de MySQL a partir de la 4.1.5. Si se dispone de una ver-
sin ms antigua, entonces es necesario desinstalarla
previamente.
Fig. 8.3. Opciones de descarga de MySQL para Windows. Para instalar la nueva versin, buscaremos la carpeta en
la que hemos guardado el fichero de instalacin. Des-
Como se puede apreciar, existen varias opciones. Por pus, ejecutaremos dicho fichero haciendo doble clic
nuestra parte, elegiremos Windows Essentials, que es la sobre el mismo y, seguidamente, aparecer una panta-
versin ms adecuada para el presente texto. Para lla como la que se reproduce en la Figura 8.5.
empezar la descarga haremos clic en Pick a mirror, el
enlace que puede verse a la derecha de la figura.
227
8. Bases de datos y software libre. MySQL bsico
8.1 MySQL: un SGBD de cdigo abierto
En la Figura 8.6 podemos apreciar la pantalla con los El registro del producto sirve, entre otras cosas, para
tres modos de instalacin. tener acceso a contenidos especiales de la pgina web
de MySQL. A continuacin, aparecer una pantalla
donde se nos presentar la opcin de configurar el ser-
vidor de MySQL. Tal como se aprecia en la Figura 8.8,
dejaremos marcada la casilla correspondiente y pulsare-
mos Terminar (Finish) para que MySQL se configure y se
finalice la instalacin.
228
8. Bases de datos y software libre. MySQL bsico
8.1 MySQL: un SGBD de cdigo abierto
En la Figura 8.9 se pueden ver ambas posibilidades de Como se observa en la Figura 8.9, otra opcin de confi-
configuracin. Como se observa, por nuestra parte guracin de la que disponemos es incluir el directorio
hemos optado por la estndar. Bin en el PATH de Windows. En este directorio se
encuentran las instrucciones necesarias para ejecutar
MySQL desde la lnea de comandos. Esta casilla tambin
la dejaremos marcada.
229
8. Bases de datos y software libre. MySQL bsico
8.1 MySQL: un SGBD de cdigo abierto
Q Entrar a nuestro servidor desde mquinas remotas, a vicios. Una opcin es ir al registro de Windows y buscar
travs de la red o incluso desde Internet (Enable root el siguiente apartado:
access from remote machines). Por obvios motivos,
esta posibilidad tampoco la contemplaremos. Esta HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
segunda opcin deber activarse slo si se instala Services
MySQL en un servidor de red al cual se acceder
desde los diferentes terminales que se le conectan. Desde este apartado localizaremos y eliminaremos el
servicio correspondiente.
Una vez pulsado el botn Siguiente (Next), aparecer una
pantalla similar a la que se reproduce en la Figura 8.12, La otra opcin es ir a Inicio/Ejecutar y teclear cmd.exe
donde se nos ofrece la posibilidad de volver atrs o can- para salir del entorno MS-DOS. Seguidamente escribire-
celar la instalacin. Por nuestra parte continuaremos y, mos sc delete nombre-servicio ___ y, automtica-
para ello, pulsaremos el botn Ejecutar (Execute). mente, desaparecer el servicio correspondiente. As,
por ejemplo, podramos borrar el servicio de MySQL con
sc delete mysql ___.
230
8. Bases de datos y software libre. MySQL bsico
8.1 MySQL: un SGBD de cdigo abierto
Caso prctico
1 Si has ido realizando los pasos explicados Dado que nos encontramos en Windows, tambin
en el Apartado anterior y todo ha podemos consultar el valor de cualquier variable del
funcionado correctamente, entonces sistema. Para ello, nos dirigiremos al panel de con-
tendrs MySQL instalado en tu ordenador. trol, entraremos en Sistema y seleccionaremos segui-
Sin embargo, vas a efectuar una sencilla damente la pestaa Opciones avanzadas.
comprobacin.
Como puede observarse en la Figura 8.16, en la parte
Se pide inferior del recuadro aparece un botn con el ttulo
Variables de entorno. Si hacemos clic en dicho botn,
Comprueba si la variable de sistema PATH se ha veremos el contenido de las variables de sistema,
actualizado, incluyendo ahora la referencia a las car- tanto su valor en general como el valor actual para
petas correspondientes a MySQL. el usuario activo.
Solucin
Fig. 8.15. Consulta de PATH desde la lnea de comandos. Fig. 8.16. Consulta de las variables de sistema desde
Windows.
231
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
Acceso al programa
El acceso al programa cliente en modo texto puede rea- Fig. 8.19. Entrada al cliente MySQL desde la lnea de
lizarse de dos formas distintas: comandos.
Q A travs del punto del men que se ha creado Si escogemos la segunda opcin, podremos seleccionar
durante la instalacin y que puede apreciarse en la tanto el servidor como el usuario. Sin embargo, al ele-
Figura 8.17. gir la primera posibilidad, accederemos directamente a
la mquina local y como usuario root, que tiene permi-
sos de administrador. Por tanto, esta opcin automtica
no debera estar accesible para los usuarios finales.
232
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
introducir sera la que se aprecia en la Figura 8.20. Ahora que ya conocemos el entorno de trabajo, es hora
de que presentemos el modo de acceder a las bases de
datos para comenzar a utilizarlas.
Fig. 8.22. Interrupcin de una sentencia. Fig. 8.23. Localizacin de la carpeta Data y el fichero de
configuracin my.ini.
233
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
Dentro de la carpeta Data se irn creando diversas car- Existe una sentencia para ver las tablas que forman una
petas para las diferentes bases de datos que se vayan base de datos, pero para ello debemos, en primer lugar,
dando de alta. Por defecto, MySQL incluye una base de abrir dicha base de datos.
datos denominada mysql que guarda informacin sobre
el propio sistema. En la Figura 8.25 puede observarse la Al contrario de otros sistemas como Oracle, la
subcarpeta correspondiente a dicha base de datos. conexin al SGBD no est asociada a la apertura de
una base de datos en concreto, sino que este pro-
ceso se realiza con posterioridad a la conexin.
234
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
235
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
Si abrimos la base de datos mediante use y ejecutamos Al igual que ocurre con otros lenguajes, los tipos pue-
SHOW TABLES, comprobaremos que la base de datos den combinarse con otros atributos como, por ejemplo,
est vaca, ya que la acabamos de crear. Para dar de UNSIGNED, que indica que slo se admiten valores posi-
alta una tabla usaremos otra sentencia que ya se cono- tivos, o bien ZEROFILL, que hace que los espacios en
ce: CREATE TABLE. blanco a la izquierda se rellenen con ceros.
Caso prctico
Es conveniente conocer los tipos de datos que pode-
mos usar en MySQL, a pesar de que no varan sustancial-
mente respecto a los que se han ido presentando a lo 2 Vas a repasar la creacin de tablas.
largo de este manual. No obstante, en la Tabla 8.1 pre-
sentamos los tipos de datos ms importantes. Se pide
236
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
Q El fichero de texto debe estar en la misma carpeta Si la importacin da problemas, en ocasiones se resuelven
que la tabla a la cual desea importarse. aadiendo en el fichero de texto un carcter al final de
Q En el fichero de texto debe haber un tabulador de cada lnea que sirva para marcar el salto a la siguiente.
separacin entre cada columna. Si optamos por esta posibilidad, entonces la instruccin
de importacin queda de la siguiente manera:
Supongamos que disponemos del fichero asig.txt con
el formato que puede apreciarse en la Figura 8.31. LOAD DATA INFILE fichero.txt INTO TABLE tabla
LINES TERMINATED BY carcter;
El fichero debe estar guardado en la misma carpeta mysql> insert into asignatura
pruebas, dentro de Data. El espacio entre las dos colum- values(1,OBDOC),(2,FOL),(3,RET),(4,IMESI
nas ha de insertarse pulsando el tabulador y no la barra ),(5,IMAOC);
espaciadora.
Veamos seguidamente cmo implementar las claves,
A continuacin, nos dirigiremos a MySQL, abriremos la tanto primarias como ajenas, as como otras restriccio-
base de datos pruebas, y teclearemos: nes de uso comn.
237
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
C Restricciones en MySQL
mysql> create table alumnos cin de las claves ajenas consiste en garantizar la inte-
(idalu int(4) unsigned primary key, gridad referencial entre tablas.
nomalu varchar(30),
fnacimiento date); Supongamos que disponemos de una tabla provincia
cuya clave primaria es idprov. Adems, tenemos una tabla
O tambin: ciudad que queremos enlazar con la tabla provincia para
que quede constancia de la provincia a la que pertene-
mysql> create table alumnos ce cada ciudad. As pues, aadiramos a la tabla ciudad
(idalu int(4) unsigned, un campo, denominado tambin idprov, que hara refe-
nomalu varchar(30), rencia a la clave primaria de la tabla provincia y que en
fnacimiento date, la tabla ciudad realizara la funcin de clave ajena.
primary key (idalu));
La integridad referencial entre ambas tablas se garanti-
En nuestro caso, la tabla ya est creada. Para aadirle zara si, adems de saber a qu provincia corresponde
la clave primaria, sin borrarla y volverla a crear, se cada ciudad, se asegura que no podr asignarse un
puede emplear el comando ALTER TABLE, que permite cdigo de provincia a una ciudad si previamente dicha
modificar la estructura de una tabla. Adems, se usar provincia no existe en la tabla provincias.
la clusula ADD.
En la definicin del campo, las claves ajenas se especi-
Por tanto, la instruccin sera la siguiente: fican en MySQL mediante la clusula REFERENCES y, a
continuacin, el nombre de la tabla referenciada con su
mysql> alter table alumnos add primary key clave primaria entre parntesis. Siguiendo con nuestro
(idalu); ejemplo, se debera escribir:
En la Figura 8.33 puede verse el proceso de adicin de mysql> create table ciudad
la clave primaria a la tabla y, posteriormente, la com- (idciud int(2) unsigned primary key,
238
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
An queda otra cuestin importante por resolver: en Q Valor nulo. Cuando un campo es clave primaria, no
MySQL las tablas pueden ser de varios tipos, entre ellos puede tener en absoluto un valor nulo, es decir,
MyIsam o InnoDB. Aunque ms adelante se volver dejarse sin valor (no se debe confundir con valor 0,
sobre esta cuestin, es importante saber que las claves o con espacios en blanco). Sin embargo, esa misma
ajenas slo funcionarn si las tablas son de tipo InnoDB, restriccin puede aplicarse tambin a campos no
239
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
Caso prctico
Finalmente, para saber de qu asignaturas se ha matriculado
3 Vas a aplicar los conceptos presentados hasta cada alumno, es preciso crear la tabla matrcula. Para ello,
ahora a las tablas creadas en el Caso prctico 2. debers basarte en la siguiente descripcin:
Recordemos cules eran:
matrcula(#idalu, #idasi)
mysql> create table alumnos alumnos asignatura
(idalu int(4)unsigned,
nomalu varchar(30), Solucin
fnacimiento date);
mysql> create table asignatura En primer lugar, para modificar la estructura de una tabla, se
(idasi smallint(2) unsigned, deber usar ALTER TABLE junto con la clusula ADD si estamos
nomasi varchar(20)); aadiendo elementos.
240
8. Bases de datos y software libre. MySQL bsico
8.2 El cliente de MySQL en modo texto
Al modificar un campo con ALTER TABLE se deber repetir toda Recordemos que un campo debe estar indexado para poder
la especificacin de dicho campo, incluso aquellas caracters- ser clave ajena. Teniendo en cuenta esta premisa y aplican-
ticas que no cambian. Por tanto, la sentencia para realizar los do los conocimientos adquiridos en esta unidad, la sentencia
cambios en alumnos se correspondera con la que se muestra de creacin de la tabla matrcula se correspondera con la que
en la Figura 8.34. se reproduce en la Figura 8.36.
Fig. 8.34. Modificacin de la tabla alumnos. Fig. 8.36. Modificacin de la tabla matrcula.
A continuacin, aplicaremos el mismo mtodo para modificar La sentencia que se reproduce en la Figura 3.36 cuenta con
la tabla asignatura, tal como se aprecia en la Figura 8.35. algunas particularidades destacables.
Para finalizar, crearemos la tabla matrcula con slo dos cam- Finalmente, se han aadido las clusulas FOREIGN KEY al final
pos: el cdigo de alumno y el cdigo de asignatura. Ambos para definir las claves ajenas. Adems, REFERENCES no se ha
sern claves ajenas respecto a las tablas alumnos y asignatura, puesto al lado de cada campo porque antes deben crearse los
respectivamente. Adems, juntos formarn la clave primaria de ndices: no puede definirse una clave ajena si previamente el
la tabla matrcula. campo no est indexado.
241
8. Bases de datos y software libre. MySQL bsico
8.3 Seguridad en MySQL
Este hecho obedece a que las sentencias SQL que ya Al igual que en otros SGBD, la sentencia que permite
conocemos se utilizan tambin en MySQL, as como los retirar permisos a los usuarios es REVOKE, cuya sintaxis
permisos tpicos. es la siguiente:
242
8. Bases de datos y software libre. MySQL bsico
8.3 Seguridad en MySQL
Caso prctico
Se pide
Solucin
Fig. 8.39. El usuario invitado realiza una consulta.
Habilitaremos al usuario invitado para realizar consultas (per-
miso SELECT) mediante la instruccin GRANT, que al mismo Seguidamente, trataremos de aadir una lnea a la tabla asig-
tiempo lo dar de alta. La ejecucin del comando puede apre- natura, la misma que acabamos de consultar. El resultado de
ciarse en la Figura 8.38. este intento puede apreciarse en la Figura 8.40.
Fig. 8.38. Creacin del usuario invitado. Aunque el mensaje de error no aclara del todo la situacin,
est claro que el sistema no permite que el usuario invitado
A continuacin, saldremos de MySQL y volveremos a entrar inserte filas nuevas en la tabla. Esto obedece a que el nico
como invitado, nos conectaremos a la base de datos pruebas y permiso que se le ha otorgado a dicho usuario es SELECT, y
realizaremos una consulta sobre la tabla asignatura. El resul- este permiso slo le habilita para realizar consultas similares
tado de este proceso puede observarse en la Figura 8.39. a la que ha efectuado en la Figura 8.38.
Consultar permisos
Para obtener una lista de los usuarios, debemos conec-
tarnos a la base de datos mysql y ejecutar la siguiente
consulta: mysql> select user from user;.
243
8. Bases de datos y software libre. MySQL bsico
8.3 Seguridad en MySQL
Como se observa en la figura, el usuario invitado tiene diente a la base de datos (en nuestro caso, pruebas)
el permiso USAGE para todos los archivos de todas las desde Data a otro directorio.
bases de datos. En otras palabras, este usuario slo
puede conectarse. Sin embargo, dispone adems del El motivo reside en que en la propia carpeta raz Data
permiso SELECT para la base de datos pruebas, que le se encuentran los ficheros correspondientes al diccio-
habilita a la hora de realizar consultas. nario de datos, que incluyen informacin necesaria para
gestionar el contenido de la base de datos.
Borrado de usuarios
En todo caso, si queremos duplicar la carpeta, debera-
En MySQL es posible borrar usuarios mediante la instruc- mos hacerlo con todo el contenido de Data, con lo que
cin DROP USER que, al contrario de CREATE USER, tam- realmente estaramos copiando todas las bases de
bin existe en versiones anteriores a la 5. No obstante, datos. Para copiar slo una base de datos, o incluso
en estas versiones slo pueden eliminarse usuarios sin solamente ciertas tablas, la mejor opcin es crear un
permisos, por lo que antes de borrar una cuenta de fichero de sentencias en lenguaje SQL que permitan, lle-
usuario debern eliminarse todos sus permisos mediante gado el caso, reconstruir los ficheros y recuperar su con-
la instruccin REVOKE. tenido.
Imaginemos que deseamos eliminar al usuario invitado Una posibilidad muy sencilla para realizar copias de
que hemos creado para la prctica anterior. Los pasos a seguridad consiste en la utilizacin del comando
seguir son los que se reproducen en la Figura 8.42. MYSQLDUMP.
244
8. Bases de datos y software libre. MySQL bsico
8.3 Seguridad en MySQL
copiar la tabla asignatura, resultara un comando como select * into outfile \copias\asig.txt ->
el que se reproduce en la Figura 8.43. fields optionally enclosed by
-> terminated by ;
-> from asignatura;
Exportacin de datos
En el Apartado anterior hemos presentado una forma de
exportar datos que consista en crear un fichero de sen- ODBC (Open DataBase Connectivity) es un driver
tencias SQL que posteriormente se pudieran ejecutar en desarrollado por Microsoft que permite el acceso
otra base de datos. a bases de datos desde cualquier aplicacin que
soporte dicho driver.
Sin embargo, una exportacin a otro tipo de programa,
por ejemplo a Excel, no puede hacerse de esta manera.
Para exportar datos a otros programas, una buena Otra forma, seguramente ms adecuada, de conectar
opcin consiste en la generacin, para cada tabla, de MySQL con otros productos para la exportacin e impor-
un fichero de texto cuyo contenido coincida con el de tacin de datos es mediante el uso de ODBC.
la tabla copiada, generalmente con los campos entre
comillas u otro separador. En el prximo Apartado, dedicado al uso de MySQL en
modo grfico, incluiremos una seccin dedicada a la
La sentencia para realizar dicha exportacin es la conexin con otros programas a travs de la mencio-
siguiente: nada tcnica.
245
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
herramientas necesarias para llevar a cabo una completa El paquete EasyPHP puede instalarse de dos formas dife-
gestin y administracin de un SGBD basado en MySQL, rentes: bien producto a producto por separado, bien
incluso a travs de la Web. mediante una instalacin global y automtica. Por nues-
tra parte, escogeremos esta segunda opcin.
A ElComponentes
paquete EasyPHP.
Descarga del producto
El paquete EasyPHP surge ante la exigencia de combi- Como se ha comentado anteriormente, EasyPHP es un
nar diversos productos necesarios para desarrollar un producto open-source que podemos obtener gratuita-
servidor web que ofrezca acceso a bases de datos. mente a travs de la Web. La pgina oficial, desde la
que efectuaremos la descarga, es www.easyphp.org y
EasyPHP contiene los principales productos relaciona- est en francs. En la parte izquierda de la pgina
dos con el acceso a bases de datos a travs de la Web y principal aparece un men como el que se reproduce
proporciona una conectividad total entre ellos, adems en la Figura 8.46.
de gran potencia y flexibilidad.
246
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
Posteriormente, surgir una pantalla de bienvenida, Si el servidor MySQL no arranca, puede deberse a varios
donde pulsaremos el botn Siguiente (Next). En la pan- motivos. Una de las principales causas es tener otro ser-
talla que aparecer a continuacin, se nos invita a vidor de MySQL ejecutndose al mismo tiempo, por
aceptar la licencia de usuario propuesta. Es preciso ejemplo el que hemos instalado al principio de la uni-
tener en cuenta que, aunque el uso es gratuito, existen dad. Tambin se pueden producir conflictos con el ser-
ciertas condiciones que conviene conocer. vicio de administracin IIS. Por todo ello, en caso de
fallo al iniciar los servidores, es conveniente consultar
Una vez aceptadas las condiciones, y tras otra pantalla la lista de servicios de Windows y desactivar los que pue-
de informacin en la que volveremos a pulsar Siguiente den causar conflictos. Este procedimiento es el que
(Next), se nos pedir un directorio para la instalacin hemos seguido con IIS Server, tal como se muestra en
del producto. Aceptaremos el que se nos ofrece por la Figura 8.50.
defecto, tal como puede apreciarse en la Figura 8.48.
247
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
Cuando el programa est en marcha, aparecer en la Como nuestro objetivo no consiste en explicar el fun-
barra de herramientas, en la parte inferior derecha de cionamiento y configuracin del servidor web, pasemos
la pantalla, un icono similar al que reproducimos en la a comprobar el producto que realmente nos interesa: el
Figura 8.51. servidor de MySQL.
El entorno grfico:
Fig. 8.51. Icono correspondiente a EasyPHP en la barra
C phpMyAdmin
de herramientas. El acceso al servidor de MySQL tiene lugar a travs de
un entorno grfico denominado phpMyAdmin, entorno
Para comprobar el estado de los servidores, basta con que abordaremos en los siguientes Apartados.
pulsar sobre dicho icono con el botn izquierdo del
ratn. Si hacemos clic con el botn derecho, entonces
Acceso a phpMyAdmin
aparecer un men donde se nos ofrece la posibilidad
de detener el funcionamiento de los servidores o reini- El entorno phpMyAdmin funciona como una Web,
ciarlos, entre otras posibilidades. Ms adelante exami- puesto que est preparado para acceder a l remota-
naremos el resto de opciones. mente. Si deseamos entrar en modo local, abriremos
nuestro navegador web y escribiremos la direccin
http://localhost/mysql/, que nos permitir acceder a
Comprobacin
una pgina como la que se aprecia en la Figura 8.53.
A continuacin, vamos a verificar el funcionamiento de
los diferentes productos que forman EasyPHP. Adems,
aprovecharemos este Apartado para comentar distintos
aspectos de la configuracin que merecen destacarse.
248
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
Fig. 8.56. Configuracin del servidor MySQL. Fig. 8.59. La base de datos pruebas est vaca.
249
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
La base de datos pruebas, como puede observarse, est unsigned, que es el que seleccionaremos para el
vaca. Ahora es el momento de empezar a crear las campo idalu.
tablas que contendrn la informacin. Q Nulo. En esta casilla podemos escoger entre null o
not null para especificar, respectivamente, si el
campo admite valores nulos o no. En nuestro caso,
Creacin y mantenimiento de tablas
lo dejaremos en not null.
Al crear una base de datos aparece en la pantalla una Q Predeterminado. Esta opcin permite introducir un
opcin para crear tablas nuevas de forma manual, como valor por defecto para que, al dar de alta una nueva
puede observarse en la Figura 8.60. fila, el campo se inicialice con dicho valor. En el caso
de idalu no es necesario, puesto que escogeremos
otra opcin posterior para su inicializacin.
Q Extra. Precisamente en esta casilla es donde espe-
cificaremos el valor por defecto del campo idalu,
puesto que se nos permite definir el campo como
auto_increment, es decir, que va tomando valores
sucesivos por defecto, empezando desde el 1.
Fig. 8.60. Opcin de creacin de tablas.
Al final de cada campo se encuentran unos apartados
encabezados por un icono identificador. Si pasamos con
A continuacin procederemos a crear, por tanto, la tabla el ratn sobre dicho icono veremos cul es su signifi-
alumnos, con la estructura que se ha ido aplicando en cado. En la Figura 8.61 puede apreciarse un detalle de
apartados anteriores: esta parte de la definicin de campo.
Q Campo. En esta casilla introduciremos el nombre del El primer icono corresponde a la caracterstica de clave
campo, en nuestro caso idalu. primaria, y se deber seleccionar en todos aquellos cam-
Q Tipo. Elegiremos el tipo del campo entre los que pos que formen parte de dicha clave. En nuestro caso,
aparecen al desplegar la lista. En el caso de idalu slo marcaremos como clave primaria el campo idalu, el
escogeremos el tipo int, por ejemplo. primero de la lista.
Q Longitud/valores. En esta casilla especificaremos la
longitud del campo o, en el caso de tipos enumera- El segundo icono hace referencia a la indexacin del
dos, los posibles valores que puede tomar. En nues- campo: habr un ndice asociado si lo dejamos marcado
tro caso, dejaremos en 4 la longitud de idalu. y no lo habr si lo dejamos desmarcado. En el caso de
Q Ordenacin (Collation). Hace referencia al criterio idalu no lo marcaremos, puesto que el hecho de ser
de ordenacin alfabtica y, a no ser que tengamos clave primaria ya implica la existencia de un ndice aso-
problemas de este tipo, es mejor dejarlo en blanco o ciado al campo.
con el valor por defecto.
Q Atributos. En este apartado podemos escoger entre El tercer icono permite definir la unicidad o no del
algunos modificadores del tipo como, por ejemplo, campo. En los campos que sean clave primaria por s
250
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
251
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
252
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
5 En el Apartado anterior has creado la base de datos Una vez en la pantalla principal de la base de datos, volveremos
pruebas y la tabla alumnos. En este Caso prctico vas a ver la opcin de crear una nueva tabla. En este momento pro-
a crear alguna tabla ms en la misma base de datos. cederemos a dar los mismos pasos efectuados para crear la tabla
alumnos. En las Figuras 8.74 y 8.75 puede apreciarse el resul-
Se pide tado final, tal como debera haber quedado.
253
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
Claves ajenas e integridad referencial Una vez indexados en ambas tablas los campos que
intervienen en la relacin, es el momento de enlazar-
Como hemos mencionado en diferentes ocasiones, la inte- los y especificar las acciones encaminadas a asegurar
gridad referencial slo est implementada de momento la integridad referencial.
sobre tablas del tipo InnoDb. Por tanto, para trabajar
con claves ajenas es preciso comprobar que las tablas Para ello, seleccionaremos la tabla que contiene las
son del tipo mencionado. claves ajenas y entraremos en la opcin Vista de rela-
ciones que aparece en la pestaa Estructura, tal como
La creacin de claves ajenas puede realizarse de dos for- se observa en la Figura 8.77.
mas, bien mediante sentencias SQL directamente, bien
a travs del asistente. En cualquier caso, hay que tener
en cuenta las dos condiciones ya mencionadas en su
momento pero que conviene recordar:
254
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
Caso prctico
Se pide
idasi smallint(2) unsigned Fig. 8.79. Creacin de los ndices de la tabla matrcula.
idalu int(4) unsigned
A continuacin crea las relaciones entre la nueva tabla y el Una vez creada la nueva tabla con sus campos e ndices corres-
resto, de forma que se asegure la integridad referencial, que pondientes, para definir su relacin con el resto iremos a la
no se pueda borrar un alumno ni una asignatura con matrcu- opcin Vista de relaciones. Al hacer clic sobre la misma, apa-
las relacionadas y que al cambiar la clave primaria de un recer una pantalla como la que se reproduce en la Figura 8.80.
alumno o una asignatura se cambien automticamente las cla-
ves ajenas correspondientes en la tabla matrcula.
Solucin
Queda un ltimo detalle antes de definir las relaciones. Como Fig. 8.81. Creacin de relaciones en la tabla matrcula.
hemos comentado con anterioridad, los campos que actan
como claves ajenas deben tener un ndice propio. Esto no Como se observa en la Figura 8.81, para la propiedad ON
ocurre en ese instante, puesto que los campos idalu e idasi DELETE se ha escogido el valor RESTRICT, de manera que no se
forman parte de un mismo ndice en la tabla matrcula. Por admiten borrados de alumnos que tengan fichas asociadas en
tanto, el siguiente paso consistir en crear un ndice para la tabla matrcula. Lo mismo se ha hecho con idasi.
cada uno de los campos por separado. Para ello, nos dirigire-
mos al apartado ndices que se encuentra en la parte central Para la propiedad ON UPDATE se ha elegido el valor CASCADE, de
de la pantalla y crearemos los ndices tal como se puede forma que si cambia el identificador de un alumno o una asig-
observar en la Figura 8.79. natura en sus respectivas tablas, lo har tambin en matrcula.
255
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
D Seguridad con phpMyAdmin a la base de datos sin contrasea. Para asignar una con-
trasea al usuario root accedemos a Privilegios, selec-
cionamos el usuario, entramos al icono Modificar y,
La seguridad con phpMyAdmin se implementa tal como desde Cambio de contrasea, efectuamos la operacin.
hemos visto en el Apartado correspondiente de MySQL. Inmediatamente dejaremos de tener acceso a phpMyAd-
As pues, nos limitaremos a comentar ciertos aspectos min y aparece un mensaje similar al de la Figura 8.83.
de la gestin de usuarios.
256
8. Bases de datos y software libre. MySQL bsico
8.4 MySQL grfico: EasyPHP
257
8. Bases de datos y software libre. MySQL bsico
Actividades
Actividades
1 Qu ventajas tiene instalar MySQL como un servi- 14 Cules son las ventajas e inconvenientes de las
cio de Windows? Razona tu respuesta y enumera tablas InnoDB respecto a las de tipo MyIsam?
dichas ventajas. Razona tu respuesta y enumera dichas ventajas e
inconvenientes.
2 Incluir las carpetas de MySQL dentro de la variable
del sistema PATH tiene una ventaja, cul es? 15 Cmo podemos convertir una tabla InnoDB al
tipo MyIsam? Explica brevemente los pasos que
3 Qu diferencia hay entre entrar a MySQL desde la deberas dar.
opcin que se crea en el men Inicio, o hacerlo desde
la lnea de comandos entrando con Ejecutar/cmd.exe? 16 Al definir una relacin, qu significa el valor CAS-
CADE en la propiedad ON DELETE? Y el mismo valor
4 Cul es la funcin de la variable Datadir dentro del en la propiedad ON UPDATE?
fichero de configuracin my.ini?
17 Cmo podemos evitar que se borren registros que
5 Cul es la funcin de la sentencia DESCRIBE? tienen asociados a su vez registros de otras tablas
a travs de claves ajenas?
6 Cmo afecta a una variable de tipo numrico la clu- 18 Explica una de las formas de copiar una tabla con
sula UNSIGNED? Y la clusula ZEROFILL? otro nombre en la misma base de datos.
Si lo consideras oportuno, pon un ejemplo.
7 En qu casos puede declararse un campo como clave
primaria en la misma lnea de definicin del campo? 19 Cul es la funcin del driver ODBC para MySQL?
Justifica tu respuesta.
8 En qu consiste la restriccin de valor nico? 20 Aparte de ODBC, qu otras opciones existen para
importar y exportar datos desde MySQL?
258
8. Bases de datos y software libre. MySQL bsico
Prcticas
Prcticas
1 Crea, usando MySQL en modo texto, una base de 9 Inserta varias filas en la tabla tarifas y comprueba
datos llamada ejercicios. que se cumple la integridad referencial, as como
todas las restricciones incluidas en la definicin de
2 En la base de datos anterior crea los siguientes la tabla.
ficheros:
proveedor(#idprv,nomprv,tfno) 10 Crea un usuario llamado invitado que slo pueda
producto(#idprd,nomprd,pvp) entrar a consultar la informacin contenida en la
base de datos, pero no pueda modificar ni borrar
3 Inserta diversos valores en las tablas proveedor y nada.
producto.
11 Realiza los cambios necesarios en la configuracin
4 Crea un fichero de texto con extensin SQL que con- de phpMyAdmin para permitir el acceso al usuario
tenga las instrucciones necesarias para reconstruir creado en la actividad 10.
la base de datos ejercicios en caso de fallo, o si se Entra con dicha clave de usuario y comprueba si las
quiere exportar la informacin a otra base de datos. restricciones de acceso que has definido se cumplen.
5 Accede a travs de tu navegador a phpMyAdmin y 12 Instala el driver ODBC de MySQL que puedes encon-
comprueba que no tienes ningn problema en hacer- trar en su pgina web, realiza los cambios de con-
lo. En caso contrario, realiza los cambios de confi- figuracin que sean necesarios y efecta una impor-
guracin que sean necesarios. tacin de datos desde una base de datos en Access
de la informacin contenida en la base de datos
6 Crea una base de datos llamada actividades desde actividades.
phpMyAdmin. Importa las tablas que tenas en la
base de datos ejercicios usando el fichero SQL cre- 13 Realiza una exportacin desde phpMyAdmin de la
ado en la actividad 4. informacin de la tabla asignaturas a un fichero de
Excel.
7 Comprueba si las tablas que has importado son del
tipo InnoDb. En caso contrario, modifcalas para 14 Utiliza las opciones de exportar para realizar una
que lo sean. copia de seguridad completa de la base de datos
actividades a un fichero de texto.
8 Crea desde phpMyAdmin una nueva tabla, que Abre posteriormente dicho fichero con un editor de
denominars tarifas, que sirva para relacionar pro- textos y comprueba el resultado.
veedor y producto. Adems, dicha tabla deber con-
tener un campo llamado pcoste que har referencia 15 Configura ODBC de manera que puedas conectarte
al precio de coste que cada proveedor ofrece para por esta va tanto a la base de datos ejercicios como
cada producto. Las actualizaciones debern reali- a actividades.
zarse en cascada y los borrados de las claves prima- Necesitars, por tanto, dos entradas diferentes para
rias que tengan claves ajenas asociadas no debern el mismo driver ODBC.
permitirse.
259
Abrazo mortal, 21 74, 123, 124, 135, 136, 138, Declare cursor, 157
Acceso directo por posicin, 17 Clave principal, 74, 75, 123 Delete, 86, 100, 125, 126, 129, 145,
ndice analtico
Acceso directo por valor, 17 Claves alternativas, 14 148, 179, 182, 183
Acceso secuencial por posicin, 17 Claves candidatas, 14 Delphi, 161
Acceso secuencial por valor, 17 Cliente en modo texto, 231, 232 Dependencia funcional, 59, 60, 61, 63
Access, 67, 68, 69, 70, 71, 72, 73, 74, Close base de datos, 131, 132, 134, Dependencia multievaluada, 62
76, 79, 80, 81, 84, 85, 87, 88, 89, 90, 137, 139, 143 Dependencia transitiva, 60
92, 93, 94, 161, 178 Close cursor, 157 Desc, 99, 102, 104, 114, 115
Actualizar, 77, 78, 85, 88 CommandButton, 164 Detalle, 83
AddNew, 177 Comparticin, 19, 21, 22 Dim, 179, 181, 182, 183
Administrador, 26, 27 Config, 256 DML, 99, 100, 126, 129
Adodb, 130 Config.inc.php, 256 Dominio, 12, 13
Adox, 130 Conjunto, 99, 109, 115, 117, 124, 126 Drop database, 132
And, 100, 105, 107, 108, 109, 110, Connect, 156, 157 Drop table, 144, 147
114, 117, 179 Connect reset, 156, 157 EasyPHP, 246, 247, 248, 249, 256, 257
Any, 119 Constraint, 135, 136, 137, 138, 139, Editor de Visual Basic, 129
Aplicacin de bases de datos, 129 140, 141, 142, 143 Eliminacin, 79, 85, 86
Archivo, 14, 15, 22, 24 Consulta, 67, 72, 80, 81, 82, 83, 84, Else, 166, 168, 179
Arquitectura cliente/servidor, 27, 28 85, 86, 87, 88, 89, 92, 174, 180, 181, End, 166, 168, 172, 179, 182, 183
As, 112, 113, 115 182, 183 End declare section, 155, 156, 157
Asc, 102 Consulta multitabla, 115, 116 End if, 166, 179
Asistente de administracin, 188 Control Data, 174, 175, 176, 177, 178, Entidad, 8, 12, 13, 14, 15, 16, 19, 23,
Asistente de configuracin, 204 180, 181, 182 25, 35, 36, 37, 38, 39, 40, 41, 42, 43,
Atributo, 12, 13, 14, 15, 17, 23, 35, Cookies, 256 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
36, 38, 39, 40, 41, 44, 45, 46, 50, 51, Copiar, 79 54, 55, 56, 57
52, 53, 54, 55, 56, 58, 59, 60, 61, 62, Count, 100, 111, 112, 115 Entidad dbil, 39, 45, 55, 56, 57
Atributo multivalor, 15, 58 Create, 100 Entidad fuerte, 39, 55, 57,
Autoincrementable, 239, 240 Create database, 132 EOF, 179
Avg, 100, 110, 111, 112, 113, 114, Create table, 133, 134, 135, 136, 137, Espacio de tablas (tablespace), 202,
115, 119, 126 138, 139, 140, 142, 143, 147, 148, 203, 204, 211, 212, 214, 220
Base de datos, 7, 19, 20, 21, 22, 24, 149, 150 Evento, 165, 167, 169, 170, 171, 172,
25, 26, 27, 28, 29, 30, Create user, 129, 146, 147 173, 177, 178, 180, 181, 182
Base de datos distribuida, 29 Create view, 145, 147, 149 Exec sql, 155, 156, 157
Base de datos replicada, 29 Criterio, 84, 85 Execute, 183
Begin declare section, 155, 156, 157 Cruzadas, 86, 87 F5, 166, 175, 176, 177, 178
Beta, 226 Cuadro de texto, 163, 164, 165, 174, Fecha/Hora, 72
Between, 100, 105, 108, 109, 114, 127 177, 178 Fetch, 157
BOF, 179 Cuarta forma normal (4FN), 58, 61, Fichero, 15, 16, 17, 18, 19, 20, 21,
Borrar, 79 62, 63 22, 23, 24, 25, 26, 27, 31,
Caja de texto, 164, 165, 169, 175, Cuota, 214 Fichero indexado, 17
177, 178, 179, 182, 183 Cursor, 157 Ficheros calculados, 17
Campo, 14, 15, 17, 20, 21, 25, 72, 74, Dao, 180 Ficheros de constantes, 16
75, 82 Data bound grid control, 175 Ficheros externos, 16
Caption, 163, 164, 172, 173, 175, 180 Database, 174, 176, 180, 181, 182, Ficheros histricos, 16
Cardinalidad de una relacin, 43, 48 183 Ficheros internos, 16
Cardinalidad de una tabla, 50 Databasename, 174, 176 Ficheros maestros, 16
Cascada, 77 Datasource, 174, 175, 176, 177, 180 Ficheros relativos, 17
Case, 26 Date(), 122, 123 Ficheros secuenciales, 17
CDate, 177 Datevalue, 183 Fields, 177, 179
Checkbox, 169 Dato, 7, 8, 9, 10, 11, 12, 14, 15, 16, For, 168
Clusula, 100, 102, 103, 104 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, Foreign key, 138, 140, 141, 142
Clave, 13, 14, 17 28, 29, 30, 31, Forma normal de Boyce-Codd (FNBC),
Clave ajena, 50, 55, 56, 57, 59, 60, Dbase, 161 57, 61, 62
63, 123, 124, 135, 136, 138, DBGrid, 175, 176, 180, 181 Formateo de salidas, 198, 199, 200
Clave primaria, 14, 38, 39, 50, 51, 52, DCL, 99, 129 Formatos, 208, 209, 210
53, 55, 56, 57, 58, 59, 60, 61, 62, 63, DDL, 99, 100, 129 Formulario, 67, 72, 80, 88, 89, 90, 91,
260
92, 93, 95, 161, 162, 163, 164, 165, 121,126 Plantilla, 188, 204, 205, 206, 207
167, 169, 170, 171, 172, 173, 174, Modelo de datos, 35 Primary key, 136, 137, 138, 139, 140, 143
175, 176, 177, 178, 179, 180, 182, 183 Modelo en red, 36, 49 Primera forma normal (1FN), 57, 58,
From, 100, 102, 103, 104, 105, 106, Modelo entidad/relacin, 35, 37 59, 61, 62
107, 108, 109, 181, 182, 183 Modelo jerrquico, 36, 49 Privilegios, 146, 147, 148, 149, 150,
Funciones de agregado, 100, 126 Modelo orientado a datos, 37 152, 154, 214, 215, 216, 217, 218
Grado, 43, 50 Modelo orientado a objetos, 36 Privilegios de objeto, 215
Grant, 129, 147, 148, 149, 154 Modelo orientado al Privilegios del sistema, 215, 217
Grid computing, 187, 188 concepto/semntico, 36, 37, 50 Privilegios especficos, 256
Group by, 100, 111, 112, 113, 115, 119 Modelo relacional, 35, 36, 37, 49, 50, Privilegios globales, 256
Having, 100, 113, 115, 119 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, Procedimiento, 131
Host string/Cadena de conexin, 194, 206 61, 62, 63, Programa, 129, 155, 156, 157
http, 227, 256 Moneda, 72 Proyecto, 162, 165, 167, 168, 169,
Identificador, 13, 14 Movefirst, 179 170, 171, 172, 173, 174, 175, 176,
If, 166, 167, 168, 179 Movelast, 177 177, 178, 180, 181
Imprimir, 79, 80, 88, 92 Movenext, 179 Quinta forma normal (5FN), 58, 62
In, 100, 105, 109, 114 Msgbox, 165, 166, 167, 179 Recordset, 177, 179, 181, 182, 183
Inconsistencia, 21 My.ini, 233, 234, 249 Recordsource, 174, 176
ndice, 17, 18, 204, 212, 213 MyIsam, 239, 251, 253 Redundancia, 19, 20, 21
Informacin, 7, 8, 9, 10, 11, 12, 14, MySql, 100 Registro, 14, 15, 17, 18, 19, 20, 22,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, Mysqldump, 244 23, 27
26, 27, 29, 30, 31 Name, 172, 173 Relacin, 19, 22, 35, 36, 37, 39, 40,
Informe, 67, 72, 80, 92, 93, 94, 95 Natural join, 62 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
InnoDB, 239, 251, 253, 254 Neptuno, 21 51, 52, 53, 54, 55, 56, 57, 58, 60, 72,
InputBox, 166, 167 Next, 168 76, 77, 78, 87
Insert, 129, 145, 148, 149, 182, 183 Normalizacin, 54, 57, 59, 62, 63, Relacin 1:1, 41, 43, 49, 55
Insert into, 120, 121, 122, 123, 126 Not, 100, 105, 107, 108, 110, 179 Relacin 1:M, 41, 42, 43, 48, 49, 55,
Insert into select, 123 Not null, 135, 136, 137, 138, 139, 56, 57
Instalacin avanzada, 191 142, 143 Relacin binaria, 22, 40, 43, 48, 49
Instalacin bsica, 191 Nmero, 72 Relacin M:N, 41, 42, 43, 48, 55, 57,
Instancia, 193, 194, 195, 202, 207, 219 Objeto, 129 Relacin reflexiva, 22, 40, 43
Integer, 179 ODBC, 245, 257 Relacin ternaria, 22, 40, 43, 48, 49, 55
Integridad, 19, 20, 22, 24, 25, 52, 53, 60 Office, 68, 69, 70, 71, 73, 89, 92, Relacin universal, 54, 58
Integridad referencial, 78, 130, 138, 144 Ole DB, 130 Repositorio, 26
Interbase, 100 Open base de datos, 134, 137, 139, Restriccin, 41, 53, 58,
Interfaz grfica, 162, 165 142, 143 Restricciones de columna, 135, 136,
Intervalo de impresin, 80 Open cursor, 157 141, 142
iSQL *Plus, 188, 200, 201, 202, 206, 211 Open-source, 225, 226 Restricciones de tabla, 137, 138, 139,
Join, 118, 119 Opendatabase, 182, 183 141, 142
Label, 163, 174, 175 Openrecordset, 181, 182, 183 Resumen, 83, 85, 94
Langues.txt, 246, 248 Operador de comparacin, 102, 110 Revoke, 129, 148, 149, 154
LCD, 26 Operador de relacin, 107, 108 Rman, 219
LDD, 26 Or, 101, 102, 105, 107, 109, 110, 114 Rol, 214, 216, 217, 218, 221
Like, 100, 102, 105, 110, 114 Oracle, 68, 99, 100, 161 Roles, 146, 149, 150, 151, 152
Listener, 193, 219 Oracle Application Server 10g, 188 Root, 229, 230, 232, 244, 256, 257
LMD, 26 Oracle Database 10g, 188, 190 Segmento, 204
Load, 169, 170, 180 Oracle Enterprise Manager 10g, 188 Segunda forma normal (2FN), 57, 59,
Load data infile, 237, 245 Order by, 100, 102, 104, 111, 113, 60, 61, 62
LostFocus, 169 114, 115, 119 Seguridad, 130, 144, 146, 150, 151,
Max, 100, 110, 111, 112, 113, 114, 126 Parmetro, 81, 84, 85 152, 153, 154
Memo, 72 Particiones, 39, 40, 45, 46, 56, Seleccin, 71, 73, 75, 77, 81, 82, 83,
Memoria, 9, 10, 11, 12, 16, Path, 229, 231, 232 90, 94
Memoria externa, 10, 11, 12, 16 Perfil, 205, 214, 216, 218 Select, 129, 145, 146, 148, 149, 155,
Memoria interna, 9,10, 11, 12, 16 Permisos, 146, 147, 150, 151, 152, 156, 157, 180, 181, 182, 183
Men, 172, 173 153, 154 Sentencia externa, 119
Min, 100, 111, 112, 113, 114, 119, phpMyAdmin, 246, 248, 252, 256, 257 Sentencia subordinada, 119
261
Set, 181, 182, 183 Subconsulta, 119, 122, 123, 125, 126 Val, 171, 177, 182, 183
SGBD, 67, 68, 72, 81, 99 Subentidades, 39, 45, 46, 47, 56, Valor nulo, 239, 240
ndice analtico
SGBDR, 99 Sum, 100, 110, 111, 114, 115 Valor por defecto, 240, 250
Show, 170 Tabla, 35, 36, 38, 40, 41, 44, 45, 46, Valor nico, 239
S/No, 72 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, Variable, 131, 168, 169, 178, 179,
Sid, 192, 205 57, 58, 59, 60, 61, 62, 63, 67, 72, 73, 180, 181, 182, 183
Sistema de informacin, 10, 11, 12 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, Variables huspedes, 155, 156, 157
Sistema gestor de ficheros, 18 84, 85, 86, 88, 89, 90, 91, 92, 93, 94 VBA, 161
Sistema informtico, 7, 10, 11, 12, Tercera forma normal (3FN), 57, 60, Vista, 144, 147, 148, 149
14, 21 61, 62, 63 Vista de relaciones, 254, 255
Sistemas gestores de bases de datos, Text, 164, 171, 174, 177, 178, 179, Vista preliminar, 80
24, 25, 27, 182, 183 Visual Basic, 129, 161, 162, 164, 165,
SQL, 26, 81, 85, 86, 99, 161, 180, Textbox, 163 166, 168, 169, 171, 172, 173, 174,
181, 182, 183 Texto, 72 176, 177, 180, 182, 183,
SQL *Plus, 188, 194, 195, 196, 197, Then, 166, 179 Visual C, 161
198, 199, 200, 201, 202, 203, 204, Tipo de datos, 133, 151 Visual Fox pro, 161
206, 209, 211, 212, 214 Tupla, 50 Visual J, 161
Sql close, 157 Unique, 136, 137, 138 Visual Net, 161
SQL embebido, 155, 157 Unload, 169, 170 Wend, 168, 179
Sql open, 157 Update, 85, 100, 123, 124, 126, 129, Where, 100, 102, 103, 106, 107, 108,
String, 181, 183 145, 148, 156, 157, 182, 183 109, 110, 113, 116, 182, 183
Sub, 131, 132, 134, 136, 139, 142, Usuarios, 144, 146, 147, 148, 149, While, 168, 178, 179, 180
143, 145 150, 152, 153, 154 Workspace, 201
262
Uso del CD del alumno
Como habrs podido observar, este libro viene acompaado de Descargas
un CD con informacin complementaria. En este apartado, hemos incluido una serie de descargas de
utilidades que te ayudarn a profundizar en los contenidos del
En esta seccin queremos darte algunas orientaciones para mdulo. Cuando abras esta seccin, encontrars un listado con
que puedas sacarle el mayor provecho posible. el nombre de la utilidad, la pgina web desde la que descargarla,
la plataforma sobre la que funciona y una breve descripcin
A Requisitos para que sepas lo que puedes hacer con ella. Si quieres realizar
la descarga, slo tienes que pinchar sobre la pgina web
correspondiente.
El CD est preparado para funcionar bajo los sistemas opera-
tivos Windows, Macintosh y Linux. Los nicos requisitos para En algunos casos, el link te llevar directamente al cuadro de
su correcto funcionamiento son: dilogo de la descarga; en otros casos, hemos considerado
ms til que el link conduzca a la pgina web que alberga el
Un navegador, preferiblemente Internet Explorer 6.0 o archivo para que seas t quien busque la descarga correspon-
superior. diente. La razn para esto es que, en un futuro, algunas pgi-
Un plug-in de Flash para poder verlo en el navegador ins- nas web podrn ofrecer actualizaciones o nuevas versiones de
talado. La aplicacin comprueba que est el plug-in nece- las utilidades que adjuntamos y no queremos que te las pier-
sario y en caso contrario ofrece una direccin de Internet das dirigindote directamente a un archivo que puede no exis-
para instalarlo. tir ya.
Conexin a Internet para poder consultar el contenido de
los diferentes mens. Enlaces
En este apartado, hemos colocado un listado bastante extenso
B Arranque
de todas las pginas web que pueden ofrecerte ms datos para
el estudio de la materia. Las hemos clasificado por categoras,
de manera que esta seccin sea un instrumento til para tu
El CD contine un fichero de auto-arranque que permitir que futura carrera profesional. Encontrars estas pginas agrupa-
nada ms introducir el CD en el lector, ste se inicie solo. das en las siguientes secciones:
C Estructura
Entidades y Asociaciones
Estndares
Gestin remota
El CD est dividido en cuatro apartados: Documentacin, Des- Internet
cargas, Enlaces y Glosario. Vamos a explicarte brevemente lo Mensajera
que puedes encontrar en cada uno de ellos. Monitorizacin
Redes
Documentacin Seguridad
Cuando escojas una Unidad determinada, vers una lista des- Servidores
plegable que muestra la documentacin que hemos seleccio- Utilidades
nado para ampliar los contenidos de esa Unidad.
Glosario
Slo tienes que pinchar sobre el descriptor que te interese y En esta ltima seccin, hemos incorporado todos los trminos
el archivo o la pgina web en cuestin se abrir directamente que aparecen en las Unidades del libro. Estn ordenados alfa-
en el marco principal de la interfaz. Recuerda que tienes un bticamente, de manera que slo debers pinchar en la letra
men por cada Unidad. correspondiente para encontrar el trmino que busca.
263