Capítulo 6. Acceso a la Base de Datos.

Capítulo 6. Acceso a la Base de Datos.

1.- Insertar nuevos datos.

Para comenzar con los accesos a la Base de Datos lo haremos insertando datos en ella, y para eso usaremos la instrucción “insert”. Su sintaxis ya se vio en el apartado “5.- Ejemplos de “INSERT””, por lo que ahora haremos un ejemplo:

– Insertar el profesor “Carlos García López” con DNI “15754685L”:

$conexion=@mysql_connect(«localhost»,»root»,»root2″);
if(!$conexion) { echo(«ERROR. No contesta el servidor.(mysql_connect)<BR>»);
return;
}
echo(«Conexión realizada correctamente<BR>»);
if (!mysql_select_db(«cursophp2«, $conexion)) { echo(«ERROR. No contesta el servidor. (mysql_select_db)<BR>»);
return;
};
echo(«Base de Datos seleccionada correctamente<BR>»);
$query=»insert into profesores (nombre, apellidos, dni) values (‘Carlos’,’García López’,’15754685L’)»;
$result=@mysql_query($query,$conexion);
if (!$result) {
echo(«ERROR en el servidor.(mysql_query:insert)»);
return;
}
else {
echo(«Profesor dado de alta correctamente.<BR>»);
}
mysql_close($conexion);

El código que hemos añadido al que teníamos ya del capítulo anterior (establecer conexión y seleccionar Base de Datos) está resaltado en negrita.

Podemos observar que se ha dado de alta el profesor si entramos en MySQL, seleccionamos la tabla “profesores” de la Base de Datos “cursophp2”, y pulsamos sobre la opción “examinar” que nos aparece en la parte superior. Entonces obtenemos la siguiente pantalla:
Capítulo 6. Acceso a la Base de Datos.
Después de ver la imagen destacaremos lo siguiente:

– En el insert no hemos incluido el código del profesor (codprofesor) porque este campo es autonumérico, y MySQL le asigna valores consecutivamente. En este caso, al ser el primer registro le ha asignado un “1”.

2.- Obtención de Datos.

Para ver los datos que tenemos usaremos la instrucción “select” con la única diferencia que en ese caso, al estar programando en PHP y no interactuando directamente con la Base de Datos con SQL deberemos realizar primero la instrucción “select” y después usar un bucle para tratar todos los registros que nos devuelva dicha instrucción.

$conexion=@mysql_connect(«localhost»,»root»,»root2″);
if(!$conexion) {
echo(«ERROR. No contesta el servidor.(mysql_connect)<BR>»);
return;
}
echo(«Conexión realizada correctamente<BR>»);
if (!mysql_select_db(«cursophp2«, $conexion)) { echo(«ERROR. No contesta el servidor. (mysql_select_db)<BR>»);
return;
};
echo(«Base de Datos seleccionada correctamente<BR>»);
$query=»select nombre, apellidos from profesores»;
$result=@mysql_query($query,$conexion);
if (!$result) {
echo(«ERROR en el servidor.(mysql_query:select)»);
return;
}
$Total=mysql_num_rows($result);
$Contador=0;
while ($Contador < $Total) {
$Nombre=mysql_result($result,$Contador,’nombre’);
$Apellidos=mysql_result($result,$Contador,’apellidos’);
echo(«$Nombre $Apellidos<BR>»);
$Contador++;
}
mysql_close($conexion);

Aunque el código es muy simple comentaremos varias cosas:

– Primero preparamos la instrucción para el “select” en la variable “$query” y luego la ejecutamos con la instrucción “mysql_query” que nos devolverá si se ejecutó correctamente o no.

– Si todo ha ido bien pondremos en la variable “$Total” el número de filas que vamos a tener, y luego usaremos un bucle con “while” para recorrer todas esas filas y hacer con cada una de ellas lo que sea necesario (en el ejemplo simplemente las mostramos en pantalla).

3.- Modificar datos existentes.

Para realizar una modificación el los daos usaremos la instrucción “update”, como ya se vio en el capítulo correspondiente a SQL. Veamos un ejemplo en el que le cambiaremos el nombre al profesor con el DNI = “”:

$conexion=@mysql_connect(«localhost»,»root»,»root2″);
if(!$conexion) {
echo(«ERROR. No contesta el servidor.(mysql_connect)<BR>»);
return;
}
echo(«Conexión realizada correctamente<BR>»);
if (!mysql_select_db(«cursophp2«, $conexion)) {
echo(«ERROR. No contesta el servidor. (mysql_select_db)<BR>»);
return;
};
echo(«Base de Datos seleccionada correctamente<BR>»);
$query=»update profesores set nombre = ‘Juan’ where dni =
‘15754685L'»;
$result=@mysql_query($query,$conexion);
if (!$result) {
echo(«ERROR en el servidor.(mysql_query:update)»);
return;
}
echo(«Modificación realizada correctamente<BR>»);
mysql_close($conexion);

Como puede observarse en este ejemplo, simplemente hemos usado la instrucción “update” sin necesidad de realizar un bucle. Y debemos tener en cuenta que con esta instrucción, como ya se explicó, puede modificar 0, una o más registros de la Base de Datos.

4.- Borrar datos.

Y por último veremos como borrar algún registro de la Base de Datos. Para ello usaremos la instrucción “delete”. Recordemos que esta instrucción, al igual que “update” puede afectar a varios registros.

$conexion=@mysql_connect(«localhost»,»root»,»root2″);
if(!$conexion) {
echo(«ERROR. No contesta el servidor.(mysql_connect)<BR>»);
return;
}
echo(«Conexión realizada correctamente<BR>»);
if (!mysql_select_db(«cursophp2«, $conexion)) {
echo(«ERROR. No contesta el servidor. (mysql_select_db)<BR>»);
return;
};
echo(«Base de Datos seleccionada correctamente<BR>»);
$query=»delete from profesores where dni=’15754685L'»;
$result=@mysql_query($query,$conexion);
if (!$result) {
echo(«ERROR en el servidor.(mysql_query:delete)»);
return;
}
echo(«Borrado realizado correctamente<BR>»);
mysql_close($conexion);

Publicaciones Similares