Python con conectividad MySQL:Conector, Crear base de datos, Tabla, Insertar [Ejemplos]
Para utilizar la conectividad de MySQL con Python, debe tener algún conocimiento de SQL
Antes de profundizar, entendamos
¿Qué es MySQL?
MySQL es una base de datos de código abierto y uno de los mejores tipos de RDBMS (Sistema de gestión de bases de datos relacionales). El cofundador de MySQLdb es Michael Widenius, y también el nombre de MySQL deriva de la hija de Michael.
En este tutorial, aprenderá
- ¿Qué es MySQL?
- Cómo instalar MySQL
- Instalar la biblioteca del conector MySQL para Python
- Pruebe la conexión de la base de datos MySQL con Python
- Crear base de datos en MySQL usando Python
- Crear una tabla en MySQL con Python
- Crear una tabla con clave principal
- Tabla ALTER en MySQL con Python
- Insertar operación con MySQL en Python
Cómo instalar MySQL Connector Python en Windows, Linux/Unix
Instalar MySQL en Linux/Unix:
Descargue el paquete RPM para Linux/Unix desde el sitio oficial:https://www.mysql.com/downloads/
En la terminal, use el siguiente comando
rpm -i <Package_name>
Example rpm -i MySQL-5.0.9.0.i386.rpm
Para comprobar en Linux
mysql --version
Instalar MySQL en Windows
Descargue la base de datos MySQL exe desde el sitio oficial e instale como de costumbre la instalación normal del software en Windows. Consulte este tutorial para obtener una guía paso a paso
Cómo instalar la biblioteca del conector MySQL para Python
Aquí se explica cómo conectar MySQL con Python:
Para Python 2.7 o inferior, instale usando pip como:
pip install mysql-connector
Para Python 3 o una versión superior, instale usando pip3 como:
pip3 install mysql-connector
Prueba la conexión de la base de datos MySQL con Python
Para probar la conectividad de la base de datos MySQL en Python aquí, usaremos el conector MySQL preinstalado y pasaremos las credenciales a connect() funcionan como host, nombre de usuario y contraseña, como se muestra en el siguiente ejemplo del conector Python MySQL.
Sintaxis para acceder a MySQL con Python:
import mysql.connector db_connection = mysql.connector.connect( host="hostname", user="username", passwd="password" )
Ejemplo :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root" ) print(db_connection)
Salida :
<mysql.connector.connection.MySQLConnection object at 0x000002338A4C6B00>
Aquí el resultado muestra la conexión creada con éxito.
Crear base de datos en MySQL usando Python
La sintaxis para crear una nueva base de datos en SQL es
CREATE DATABASE "database_name"
Ahora creamos una base de datos utilizando la programación de bases de datos en Python
import mysql.connector db_connection = mysql.connector.connect( host= "localhost", user= "root", passwd= "root" ) # creating database_cursor to perform SQL operation db_cursor = db_connection.cursor() # executing cursor with execute method and pass SQL query db_cursor.execute("CREATE DATABASE my_first_db") # get list of all databases db_cursor.execute("SHOW DATABASES") #print all databases for db in db_cursor: print(db)
Salida :
Aquí, la imagen de arriba muestra el my_first_db se crea la base de datos
Crear una tabla en MySQL con Python
Vamos a crear una tabla simple "estudiante" que tiene dos columnas como se muestra en el siguiente ejemplo de Python del conector MySQL.
Sintaxis SQL :
CREATE TABLE student (id INT, name VARCHAR(255))
Ejemplo:
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() #Here creating database table as student' db_cursor.execute("CREATE TABLE student (id INT, name VARCHAR(255))") #Get database table' db_cursor.execute("SHOW TABLES") for table in db_cursor: print(table)
Salida :
('student',)
Crear una tabla con clave principal
Vamos a crear un Empleado tabla con tres columnas diferentes. Agregaremos una clave principal en id columna con restricción AUTO_INCREMENT como se muestra en el siguiente proyecto de Python con conectividad de base de datos.
Sintaxis SQL :
CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))
Ejemplo :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() #Here creating database table as employee with primary key db_cursor.execute("CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))") #Get database table db_cursor.execute("SHOW TABLES") for table in db_cursor: print(table)
Salida :
('employee',) ('student',)
Tabla ALTER en MySQL con Python
El comando Alter se usa para modificar la estructura de la tabla en SQL. Aquí modificaremos Estudiante tabla y agregue una clave principal a la id como se muestra en el siguiente proyecto de conector Python MySQL.
Sintaxis SQL :
ALTER TABLE student MODIFY id INT PRIMARY KEY
Ejemplo :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() #Here we modify existing column id db_cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")
Salida :
Aquí abajo puedes ver el id se modifica la columna.
Insertar Operación con MySQL en Python:
Realicemos la operación de inserción en la tabla de la base de datos MySQL que ya creamos. Insertaremos los datos de la tabla ESTUDIANTE y la tabla EMPLEADO.
Sintaxis SQL :
INSERT INTO student (id, name) VALUES (01, "John") INSERT INTO employee (id, name, salary) VALUES(01, "John", 10000)
Ejemplo :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() student_sql_query = "INSERT INTO student(id,name) VALUES(01, 'John')" employee_sql_query = " INSERT INTO employee (id, name, salary) VALUES (01, 'John', 10000)" #Execute cursor and pass query as well as student data db_cursor.execute(student_sql_query) #Execute cursor and pass query of employee and data of employee db_cursor.execute(employee_sql_query) db_connection.commit() print(db_cursor.rowcount, "Record Inserted")
Salida :
2 Record Inserted
python
- Declaración Python Print():cómo imprimir con ejemplos
- Python String strip() Función con EJEMPLO
- Python String count () con EJEMPLOS
- Python String format() Explicar con EJEMPLOS
- Método Python String find() con ejemplos
- Funciones Python Lambda con EJEMPLOS
- Función Python round() con EJEMPLOS
- Función Python map() con EJEMPLOS
- Python Timeit() con ejemplos
- Contador de Python en colecciones con ejemplo
- type() y isinstance() en Python con ejemplos