Documentos de Académico
Documentos de Profesional
Documentos de Cultura
● La clave primaria es numérica por ello debes pasarle un valor numérico (no debe ir
entre comillas).
○ No importa qué valor le pases dado que al estar definido como autoincrementable el servidor de
bases de datos se ocupará de darle el último valor más uno (lo incrementará en una unidad).
○ Te propongo que le asignes siempre el valor 0.
● He usado el operador “.” para escribir la sentencia SQL en dos líneas para que sean
las legible. No estás obligado a hacerlo así
3.INSERTAR REGISTROS EN LA BASE DE DATOS
● El código de la sentencia SQL sería.
○ presta especial atención al uso de las comillas simples y dobles. Un error en su uso
provocará que el script falle
3.INSERTAR REGISTROS EN LA BASE DE DATOS
● Tras la creación de la sentencia INSERT se invoca a la función
mysqli_query() y se informa al usuario del resultado de la operación
efectuada.
3.INSERTAR REGISTROS EN LA BASE DE DATOS
A modo de epilogo en las siguientes diapositivas te muestro el código completo de
esta operación
3.INSERTAR REGISTROS EN LA BASE DE DATOS
● Conexión a la base de datos y datos a insertar.
3.INSERTAR REGISTROS EN LA BASE DE DATOS
● Creación y ejecución de la sentencia INSERT.
3.INSERTAR REGISTROS EN LA BASE DE DATOS
ACTIVIDAD 4. Añade un mínimo de 4 registros más a la base de datos. Para
ello debes hacer uso de PHP.
● Comprueba inspeccionando el contenido de la base de datos, mediante
phpmyadmin, que la inserción se ha llevado a cabo
4.BORRAR REGISTROS DE LA BASE DE DATOS
● Para borrar los registros de la base de datos usaremos la sentencia DELETE.
● Siempre que usemos DELETE debemos emplear la opción WHERE para
indicar que registros deseamos borrar.
○ De lo contrario se borrarán todos los registros de la base de datos
● La sintaxis de esa instrucción es.
DELETE FROM tabla
WHERE columna operador valor
4.BORRAR REGISTROS DE LA BASE DE DATOS
En el código que te muestro como ejemplo procedemos a borrar el registro
número 3.
4.BORRAR REGISTROS DE LA BASE DE DATOS
ACTIVIDAD 4. Efectua el borrado de algunos de los registros de la tabla
usando PHP.
● Comprueba que la operación se ha llevado a cabo de forma satisfactoria
inspeccionando la base de datos mediante phpmyadmin.
5.MODIFICAR UN REGISTRO DE LA TABLA
● Para modificar registros de la tabla usamos la instrucción UPDATE.
○ Está instrucción permite modificar el valor de un registro ya existente.
● La sintaxis de la instrucción UPDATE es:
UPDATE tabla
SET columna 1=valor 1, columna2= valor2,...
WHERE condición
5.MODIFICAR UN REGISTRO DE LA TABLA
● En el ejemplo siguiente modificaremos uno de los registros previamente
insertados.
○ Observa que como en los casos anteriores hacemos uso de la función mysqli_query()
5.MODIFICAR UN REGISTRO DE LA TABLA
ACTIVIDAD 5. Efectua la actualización de alguno de los registros de la
tabla usando PHP.
● Comprueba que la operación se ha llevado a cabo de forma satisfactoria
inspeccionando la base de datos mediante phpmyadmin.
6.SELECCIONAR REGISTROS DE LA TABLA
● La selección de los registros de la tabla, todos o solo aquellos que cumplan
cierta condición, se lleva a cabo mediante la sentencia SELECT .
● La sintaxis de dicha sentencia es.
SELECT lista de campos FROM tabla WHERE condición
● En su forma más sencilla se recuperan todos los campos de la tabla. En este
caso su sintaxis es:
SELECT * FROM tabla
6.SELECCIONAR REGISTROS DE LA TABLA
● Para la selección de los registros y su ulterior presentación en forma de tabla
usaremos varias funciones, una de ellas en estos momentos muy conocida
por nosotros.
○ mysqli_query()
○ mysqli_num_rows()
○ mysqli_fetch_assoc()
● Tan solo comentaremos, someramente, las dos últimas.
6.SELECCIONAR REGISTROS DE LA TABLA
● mysqli_num_rows(): Retorna el número de registros obtenidos tras ejecutar la sentencia SELECT.
○ Recibe como parámetro la salida de la función mysqli_query()
○ $strSQL=”SELECT ….”;
○ $r=mysqli_query($conn,$strSQL);
○ $num_reg=mysqli_num_rows($r);
● mysqli_fetch_assoc(): Retorna tantos arrays asociativos como registros hayamos recuperado. Los
elementos de cada array son los campos de cada registro.
○ En nuestro ejemplo como nuestra tabla tiene 8 campos cada array devuelto por está función tendrá 8 valores.
○ Si la salida de dicha función se ha asignado a la variable $datos mediante la sentencia:
$fila=mysqli_fetch_assoc($r), accedemos a los distintos campos mediante el nombre con que
se definió el campo en la tabla.
■ $fila[“campo_de_la_tabla”]
6.SELECCIONAR REGISTROS DE LA TABLA
● Para procesar los registros recuperados por la sentencia SELECT podemos
usar un bucle while
while( $fila=mysqli_fetch_asso($r)) {
//Se procesan las filas obtenidas
}
6.SELECCIONAR REGISTROS DE LA TABLA
Como ejemplo en las siguientes diapositivas mostraremos cómo seleccionar los
registros de la única tabla de nuestra base de datos y mostraremos el resultado
en forma de tabla
1. Realizo la conexión a la base de datos y
a. Recupero todos los registros que componían la tabla (Sentencia SELECT)
b. Recupero el número de registros que me ha proporcionado la sentencia SELECT (es decir el
número de registros que tenía la tabla)
6.SELECCIONAR REGISTROS DE LA TABLA
6.SELECCIONAR REGISTROS DE LA TABLA
2.- Retorno el número de registros que contenía la tabla y dibujo la primera
fila de la tabla HTML, es decir la cabecera (etiquetas <th>)
6.SELECCIONAR REGISTROS DE LA TABLA
6.SELECCIONAR REGISTROS DE LA TABLA
3. Recupero las filas o registros de la tabla almacenándolas en un array de arrays
asociativos.
● Por cada una de las filas devueltas por la sentencia SELECT creo un registro
de la tabla HTML
● Uso en bucle WHILE para saber cuando llego al final de grupo de registros
proporcionados por la sentencia SELECT.
● Accedo a los campos de cada registros usando como índice del array el
nombre que tiene el campo en la base de datos.
6.SELECCIONAR REGISTROS DE LA TABLA
6.SELECCIONAR REGISTROS DE LA TABLA
ACTIVIDAD 6. Recupera todos los datos de la tabla y muestralos en una
tabla HTML
7.RECUPERAR EL ÚLTIMO ID INSERTADO
La función mysqli_insert_id() nos devuelve el último valor generado con el
atributo AUTO_INCREMENT
● Si no hay un campo AUTO_INCREMENT regresará el valor de cero
● La columna no tiene que llamarse necesariamente “id”
● También nos retorna el último “id” que se ha modificado con la sentencia
UPDATE.
8.VERIFICAR QUE LOS DATOS NO SE DUPLIQUEN
● Debemos tener una clave única “natura” a parte de la clave primaria de la
tabla (AUTO_INCREMENT)
○ Cuando decimos “natural” queremos decir que tenga sentido en el problema que estamos
modelando, por ejemplo el DNI de una persona o el NIF de una empresa.