Espera por favor...

Lenguaje PHP
PHP y MySQL

    ¿Qué es MySQL?

    MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual: Licencia pública general/Licencia comercial por Oracle Corporation. Está considerada como la base datos de código abierto más popular del mundo,​ y una de las más populares en general junto a Oracle y Microsoft SQL Server, sobre todo para entornos de desarrollo web.

    Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.

    - Desarrollado bajo licencia dual GPL/Licencia comercial por Oracle Corporation

    - Desarrollado en su mayor parte en ANSI C y C++

    - Fue desarrollado por MySQL AB (fundada por David Axmark, Allan Larsson y Michael Widenius)

    - Adquirida por Sun Microsystems en 2008

    - A su vez fue comprada por Oracle Corporation en 2010

    - En 2009 se creó un fork denominado MariaDB

    - Es usado por muchos sitios web grandes y populares, como Wikipedia,​ Google​ (aunque no para búsquedas), Facebook,​ Twitter,​ Flickr,​ y YouTube.

Lenguaje PHP
PHP y MySQL

    Versiones MySQLversiones MySQL

Lenguaje PHP
PHP y MySQL

    Funciones de MySQL

    Una función en MySQL es una rutina creada para tomar unos parámetros, procesarlos y retornar en un salida.

    Se diferencian de los procedimientos en las siguientes características:
      • Solamente pueden tener parámetros de entrada y no parámetros de salida
      • Deben retornar en un valor con algún tipo de dato definido
      • Pueden usarse en el contexto de una sentencia SQL
      • Solo retornan un valor individual, no un conjunto de registros

    Relación de funciones y su cometido:

    mysql_client_encoding — Devuelve el nombre del conjunto de caracteres

    mysql_close — Cierra una conexión de MySQL

    mysql_connect — Abre una conexión al servidor MySQL

    mysql_create_db — Crea una base de datos MySQL

    mysql_data_seek — Mueve el puntero de resultados interno

    mysql_db_name — Recupera el nombre de la base de datos desde una llamada a mysql_list_dbs

    mysql_db_query — Selecciona una base de datos y ejecuta una consulta sobre la misma

    mysql_drop_db — Elimina (DROP) una base de datos MySQL

    mysql_errno — Devuelve el valor numérico del mensaje de error de la última operación MySQL

    mysql_escape_string — Escapa una cadena para ser usada en mysql_query

    mysql_fetch_array — Recupera una fila de resultados como un array asociativo, un array numérico o como ambos

    mysql_fetch_assoc — Recupera una fila de resultados como un array asociativo

    mysql_fetch_field — Obtiene la información de una columna de un resultado y la devuelve como un objeto

    mysql_fetch_lengths — Obtiene la longitud de cada salida en un resultado

    mysql_fetch_object — Recupera una fila de resultados como un objeto

    mysql_fetch_row — Obtiene una fila de resultados como un array numérico

    mysql_field_flags — Obtiene las banderas asociadas al campo especificado de un resultado

    mysql_field_len — Devuelve la longitud del campo especificado

    mysql_field_name — Obtiene el nombre del campo especificado de un resultado

    mysql_affected_rows — Obtiene el número de filas afectadas en la anterior operación de MySQL

Lenguaje PHP
PHP y MySQL

    Funciones de MySQL (continuación)

    mysql_field_table — Obtiene el nombre de la tabla en la que está el campo especificado

    mysql_field_type — Obtiene el tipo del campo especificado de un resultado

    mysql_free_result — Libera la memoria del resultado

    mysql_get_client_info — Obtiene información del cliente MySQL

    mysql_get_host_info — Obtener información del anfitrión de MySQL

    mysql_get_proto_info — Obtiene información del protocolo MySQL

    mysql_get_server_info — Obtiene información del servidor MySQL

    mysql_info — Obtiene información sobre la consulta más reciente

    mysql_field_seek — Establece el puntero del resultado en un índice de campo específicado

    mysql_list_dbs — Lista las bases de datos disponibles en un servidor MySQL

    mysql_list_fields — Lista los campos de una tabla de MySQL

    mysql_list_processes — Lista los procesos de MySQL

    mysql_list_tables — Enumera las tablas de una base de datos MySQL

    mysql_num_fields — Obtiene el número de campos de un resultado

    mysql_num_rows — Obtiene el número de filas de un conjunto de resultados

    mysql_pconnect — Abre una conexión persistente a un servidor MySQL

    mysql_ping — Efectua un chequeo de respuesta (ping) sobre una conexión al servidor o reconectarse si no hay conexión

    mysql_real_escape_string — Escapa caracteres especiales en una cadena para su uso en una sentencia SQL

    mysql_result — Obtiene datos de resultado

    mysql_select_db — Selecciona una base de datos MySQL

    mysql_set_charset — Establece el conjunto de caracteres del cliente

    mysql_stat — Obtiene el estado actual del sistema

    mysql_tablename — Obtiene el nombre de la tabla de un campo

    mysql_thread_id — Devuelve el ID del hilo actual

    mysql_unbuffered_query — Envía una consulta SQL a MySQL, sin recuperar ni almacenar en búfer las filas de resultados

    mysql_query — Envia una consulta MySQL

    mysql_insert_id — Obtiene el ID generado en la última consulta

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    Se requiere una base de datos MySQL y editor de textos simple

    Se describe:

      El establecimiento de una conexión de MySQL usando PHP en una página

      Conexión a una tabla de MySQL

      Recuperación los resultados

      Presentación de nuevo en la web

    Utiliza las instrucciones PHP MySQL:

      mysqli_connect

      mysqli_query

      mysqli_fetch_array

      mysqli_close

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    1. Conectar a una base de datos MySQL

    Es necesario:

    • Dirección del servidor MySQL
    • Nombre de usuario y contraseña
    • Nombre de la base de datos

    Crear un archivo ficheronombre.php e insertar el código php antes que el HTML

    Poner el código html a continuación

    Abrir el archivo en un navegador y no se debería ver nada aparte de la etiqueta del título

    PHP necesita que mysqli está habilitado

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    <?php
    //Etapa1. Crear la variable $db y asignar a la cadena de conexión
    $db = mysqli_connect('localhost','username',
    'password','database_name') or die('Error al conectar al servidor MySQL.');
    ?>
    <html>
    <head> Ejemplo </head>
    <body>
    <h1>PHP y MySQL<h1>
    </body>
    </html>

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    2. Realización de una consulta a la base de datos:

    - La consulta MySQL se realiza en el cuerpo de la página html

    - De modo adicional se requerirán etiquetas de apertura y cierre

    - Para la consulta se han de especificar los campos de una tabla dada

    - La variable $query selecciona todas las filas de la tabla

    - Solo hay que utilizar el nombre de la tabla

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    <?php
    //Etapa1. Crear la variable $db y asignar a la cadena de conexión
    $db = mysqli_connect('localhost','username',
    'password','database_name') or die('Error al conectar al servidor MySQL.');
    ?>
    <html>
    <head> Ejemplo </head>
    <body>
    <h1>PHP y MySQL<h1>
    <?php
    //Etapa2. Búsqueda
    $query = "SELECT * FROM table_name";
    mysqli_query($db, $query) or die('Error al buscar en la base de datos.');
    ?>
    </body>
    </html>

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    3. Llevar los datos a la página:

    - La variable $resultado almacena la consulta

    - Hay que pasar por todas las filas de esa consulta

    mysqli_fetch_array almacena las filas en una matriz

    - Se almacena $resultado en mysqli_fetch_array, y se pasa a una variable llamada $fila

    - fila$ es la salida en un bucle while, que con echo se muestran

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    <?php
    //Etapa1. Crear la variable $db y asignar a la cadena de conexión
    $db = mysqli_connect('localhost','username','password',
    'database_name') or die('Error al conectar al servidor MySQL.');
    ?>
    <html>
    <head> Ejemplo </head>
    <body>
    <h1>PHP y MySQL<h1>
    <?php
    //Etapa2. Búsqueda
    $query = "SELECT * FROM table_name";
    mysqli_query($db, $query) or die('Error al buscar en la base de datos.');
    //Etapa3. Mostrar datos
    $resultado = mysqli_query($db, $query);
    $fila = mysqli_fetch_array($resultado);
    while ($fila = mysqli_fetch_array($resultado)) {
    echo $fila['nombre'] . ' ' . $fila['apellido'] . ': ' . $fila['email']
    . ' ' . $fila['poblacion'] .'<br />';
    ?>
    </body>
    </html>

Lenguaje PHP
PHP y MySQL

    Ejemplo conexión con BD

    4. Cerrar la conexión:

    Es sencillo, se logra con la siguiente instrucción

    <?php
    //Etapa 4. Cierre conexión
    mysqli_close($db);
    ?>
    </html>


    Tutorial sobre conexión a bases de datos MySQL: Código Xules

Búsquedas en UMU