¿Cómo crear una base de datos MySQL con PHP?

Iniciophp mysqlCrear Base de Datos MySQL
¿Cómo crear una base de datos MySQL con PHP?

by Juan Carlos García

22-Jul-2023

(5)

Suscribirme al canal:

MySQL PHP desde cero 2 | ¿Cómo crear base de datos y tablas? MySQLi | PDO

Viajero Web bienvenido a este segundo vídeo de la serie MySQL PHP desde cero, en este segundo capitulo aprenderás a crear bases de datos y tablas en MySQL desde PHP a través de los 3 modos que te presente en el primer video, y si aun no lo has visto ve a este otro tutorial ¿Cómo conectar MySQL con PHP? Para que entiendas mejor este segundo vídeo.

No olvides en suscribirte a nuestro canal de YouTube EWebik, para que te enteres cuando suba nuevo contenido.

¡No te puedes perder las nuevas clases 🧐!

PHP - MySQL

PHP - MySQL

Curso gratuito de PHP y MySQL para principiantes

Conectar PHP con MySQL

Conectar PHP con MySQL

¿Cómo realizar la conexión de PHP con MySQL utilizando PDO y MySQLi?

Crear Base de Datos MySQL

Crear Base de Datos MySQL

¿Cómo crear una base de datos MySQL con PHP?

Insertar datos en MySQL desde PHP

Insertar datos en MySQL desde PHP

¿Cómo insertar datos en MySQL desde PHP? Y ¿ Cómo obtener el ultimo ID insertado de una tabla?

Sentencias Preparadas MySQL PHP

Sentencias Preparadas MySQL PHP

¿Cómo crear y ejecutar sentencias preparadas (Prepared Statement) en MySQL con PHP?

Select, Update, Delete MySQL PHP

Select, Update, Delete MySQL PHP

¿Cómo hacer y ejecutar querys SELECT, UPDATE y DELETE en MySQL desde PHP?

¿Cómo crear un Dashboard en PHP y MySQL?

¿Cómo crear un Dashboard en PHP y MySQL?

¿Cómo crear un Dashboard con gráficas en PHP y MySQL?

Procedimientos Almacenados MySQL PHP

Procedimientos Almacenados MySQL PHP

CREATE PROCEDURE en MySQL: ¿Cómo crear procedimientos almacenados en MySQL?

Login en PHP

Login en PHP

LOGIN PHP: ¿Cómo crear un login en PHP y MySQL en menos de una hora?

🧐 Autoevaluación: Crear Base de Datos MySQL

¿Cuál es la función de PHP que se utiliza para establecer una conexión con el servidor de base de datos MySQL?

Para crear una nueva base de datos en MySQL usando PHP, ¿Qué sentencia SQL se utiliza?

¿Qué parámetro se debe proporcionar a la función mysqli_query() para ejecutar una sentencia SQL que cree una nueva tabla en una base de datos MySQL?

¿Cómo crear una base de datos utilizando MySQL y PHP?

Si te preguntas, ¿Vale la pena ver este vídeo? Este vídeo es la base de todo prácticamente, ya que aquí además de aprender a crear bases y tablas, crearemos la base de datos y tabla para nuestro Dashboard de la clase final, y si aun tienes dudas, aquí te dejo los puntos mas relevantes que aprenderás si te quedas y miras el tutorial:

  • Realizaremos un método que permita ejecutar una consulta almacenada en un string.
  • Aprenderás la sintaxis para crear una base de datos con los 3 modos, por procedimiento, orientada a objetos y PDO.
  • Modificaremos los métodos del vídeo anterior para conectarnos a una base en particular.
  • Crear tabla aplicando los 3 métodos.

¿Qué necesito para este tutorial?

Como hemos venido manejando necesitas un gestor de base de datos MySQL y un editor de código para el proyecto aquí te dejo unos link

Y prácticamente es todo ya que al instalar XAMPP tendrás todas las herramientas necesarias para conectar PHP y MySQL.

¿Cómo crear una Base de Datos en MySQL?

Es muy fácil crear una base de datos en MySQL con PHP solo necesitamos crear la consulta y ejecutarla a través de  alguno de los modos que existen en PHP:

  • Por Objetos
  • Procedimientos
  • PDO

Estos tres casos los explicamos en el vídeo, pero de manera rápida solo necesitas crear la consulta siguiente:

CREATE DATABASE  [nombre-base-de-datos] 

En esta consulta la interpretamos como crear base de datos con este nombre, en esta clase creamos la base de datos "db_php_mysql"

CREATE DATABASE  db_php_mysql

Ya que tenemos nuestra consulta solo tenemos que ejecutarla, tal y como le hemos hecho a lo largo de este tutorial.

Creando base de datos en MySQLi con objetos

Para esto solo necesitamos abrir conexión y utilizar el método "query" que permite ejecutar una consulta string, por ejemplo:

//Creando objeto de conexión, la clase mysqli requiere de cuatro parámetros para iniciar una conexión

// IP del servidor, usuario de la base de datos, contraseña y nombre de la base de datos

oConBD = new mysqli($ipBD, $usuarioBD, $passBD, $nombreBD){ //Se crea el objeto oConBD

    if (oConBD->connect_error) { //utilizando connect para inicializar conexión

           echo "Error al conectar a la base de datos: " . $this->oConBD->connect_error . " ";

            return false;

     }

     echo "Conexión exitosa..." . " ";

     if (oConBD->query("CREATE DATABASE  db_php_mysql ") === true) { //ejecutando query

          echo "Base de datos creada en MySQL por Objetos ";

    } else {

         echo "Error al ejecutar consulta " . $this->oConBD->error . " ";

    }

}

Creando base de datos en MySQL mediante procedimientos

Ahora hagamos lo mismo pero utilizando Procedimientos, recuerda que la diferencia principal entre objetos y procedimientos es que en procedimiento se utiliza una función por cada acción que se lleva a cabo, mientras que en objetos se instancia un objeto a base de datos y se llaman los métodos y atributos para realizar una acción en particular.

//mysqli_connect - método para iniciar la conexión a base de datos recibe los mismo datos que la clase mysqli

oConBD = mysqli_connect($ipBD, $usuarioBD, $passBD, $nombreBD);

if (!$this->oConBD) {

   echo "Error al conectar a la base de datos: " . mysqli_connect_error() . " ";

   return false;

}

echo "Conexión exitosa..." . " ";

// mysqli_query - permite ejecutar una consulta string recibiendo como parámetro la conexión de base de datos y la consulta en string

if (mysqli_query(oConBD, "CREATE DATABASE  db_php_mysql ")) { // se ejecuta la consulta

   echo "Base de datos creada en MySQL por procedimientos ";

} else {

   //mysqli_error regresa el error al intentar ejecutar una consulta

   echo "Error al ejecutar consulta " . mysqli_error(oConBD) . " ";

}

//mysqli_close cierra la conexión a base de dato de MySQL

mysqli_close(oConBD);

Creando base de datos en MySQL con PDO

PDO es similar a la creación con objetos solo cambia la clase ahora es PDO y los métodos y atributos cambian, por ejemplo:

//Las instrucciones para PDO agrégalas dentro de un try caych

try {

        // Clase PDO recibe los mismos parámetros que los ejemplos anteriores, sin embargo, requiere expresamente un                   //  string de conexión que contenga el host y dbname de mysql

        oConBD = new PDO("mysql:host=" . $ipBD . ";dbname=" . $nombreBD, $usuarioBD, $passBD); //Abrimos conexión

        echo "Conexión exitosa a MySQL..." . " ";

       // Con exec en PDO ejecutamos un consulta en string

       oConBD->exec("CREATE DATABASE  db_php_mysql "); 

       echo "Base de datos creada en MySQL mediante PDO ";

} catch (PDOException $e) {

       echo "Error al conectar a la base de datos: " . $e->getMessage() . " ";

       return false;

}

Creando tablas en MySQL desde PHP

De manera similar podemos crear tablas en PHP a través de la instrucción CREATE TABLE así que crearemos una tabla en la base de datos db_php_mysql que creamos en el apartado anterior.

Consulta para crear una tabla en MySQL

Almacenamos en una variable $strInsert el query para crear la tabla resumen_productos

$strInsert = "

CREATE TABLE resumen_productos (

                   id_resumen INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

                   nombre VARCHAR(45) NOT NULL,

                    categoria VARCHAR(45) NOT NULL,

                    precio FLOAT NOT NULL,

                    cantidad_vendidos INT(11) NOT NULL,

                    en_almacen INT(11) NOT NULL,

                    fecha_alta datetime NOT NULL

)

";

Observa que id_resumen es auto incremental, esto es necesario ya que en la clase siguiente veremos como recuperar el ultimo id al realizar un insert.

Creando tablas en MySQL mediante objetos

Ahora como lo hicimos con la base de datos necesitamos abrir la conexión y ejecutar la consulta, en resumen tenemos:

// ...... Abrir conexión a base de datos por objetos

// Pasamos la variable $strInsert para ejecurar el query

if (oConBD->query($strInsert) === true) { //ejecutando query para la creación de una tabla en MySQL

          echo "Tabla creada en MySQL ";

} else {

         echo "Error al crear tabla en MySQL " . oConBD->error . " ";
}

Creando tablas en MySQL mediante procedimientos

Ahora utilizando mysqli_query crearemos nuestra tabla resumen_productos

// ...... Abrir conexión a base de datos mediante procedimientos

if (mysqli_query(oConBD, $strInsert)) { // se ejecuta la consulta de la creación de la tabla

echo "Tabla creada en MySQL por procedimientos  ";

} else {

//mysqli_error regresa el error al intentar ejecutar una consulta

echo "Error al ejecutar consulta " . mysqli_error(oConBD) . " ";

}

mysqli_close(oConBD);

Creando tablas en MySQL mediante PDO

Por ultimo crearemos la misma tabla utilizando PDO

try {

       // ...... Abrir conexión a base de datos mediante PDO

       oConBD->exec($strInsert); 

       echo "Tabla creada en MySQL mediante PDO ";

} catch (PDOException $e) {

       echo "Error al conectar a la base de datos: " . $e->getMessage() . " ";

       return false;

}

Diferencia entre PDO, MySQLi por procedimientos y objetos

Espero que te haya sido útil esta clase y hayas aprendido a crear tablas y bases de datos en MySQL, hice estas 3 formas ya que son las mas comunes y la única diferencia entre utilizar una u otra es lo siguiente:

  • MySQLi sin importar si es por procedimientos u objetos solo se puede utilizar con motores MySQL por lo que si necesitas migrar a otra base de datos tendrás que reescribir todo el código referente a conexiones y consultas.
  • PDO es un nivel de abstracción que puede trabajar con MySQL pero también con otros motores de base de datos, por lo tanto, si requiere cambiar la base solo tendrás que hacer pequeños cambios muy especifico y no reescribir todo el código.

Excelente ¿Qué te ha parecido esta clase? Espero que te haya gustado y que hayas comprendido como utilizar estas tres sintaxis, en los siguientes episodios seguiremos utilizando estas sintaxis y haremos varios ejercicios, nos vemos en siguiente post.

🧐 Autoevaluación: Crear Base de Datos MySQL

¿Cuál es la función de PHP que se utiliza para establecer una conexión con el servidor de base de datos MySQL?

Para crear una nueva base de datos en MySQL usando PHP, ¿Qué sentencia SQL se utiliza?

¿Qué parámetro se debe proporcionar a la función mysqli_query() para ejecutar una sentencia SQL que cree una nueva tabla en una base de datos MySQL?

Juan Carlos

Juan Carlos García

Desarrollador de software / SEO

Durante años he desarrollado plataformas dedicadas al rastreo satelital y varios sitios web que se encuentran en la primera página de Google, y hoy quiero compartir contigo lo que se en tecnologías como: Node JS, PHP, C# y Bases de datos.

Si quieres apoyarme sígueme en mis redes sociales y suscríbete a mi canal de YouTube.

EWebik

Diseño de páginas web y aplicaciones moviles.

© 2024 EWebik