Python con MySQL: Connetti, Crea database, Tabella, Inserisci (esempi)

Sommario:

Anonim

Per lavorare con MySQL usando Python, devi avere una certa conoscenza di SQL

Prima di immergersi in profondità, capiamo

Cos'è MySQL?

MySQL è un database Open Source e uno dei migliori tipi di RDBMS (Relational Database Management System). Il co-fondatore di MySQLdb è di Michael Widenius, e anche il nome MySQL deriva dalla figlia di Michael.

Come installare MySQL

Installa MySQL in Linux / Unix:

Scarica il pacchetto RPM per Linux / Unix dal sito ufficiale: https://www.mysql.com/downloads/

Nel terminale utilizzare il seguente comando

rpm -i 
Example rpm -i MySQL-5.0.9.0.i386.rpm

Per controllare in Linux

mysql --version

Installa MySQL in Windows

Scarica l'exe del database MySQL dal sito ufficiale e installa normalmente l'installazione normale del software in Windows. Fare riferimento a questo tutorial, per una guida passo passo

Installa la libreria del connettore MySQL per Python

Per Python 2.7 o versioni precedenti, installa utilizzando pip come:

pip install mysql-connector

Per Python 3 o versione successiva, installa utilizzando pip3 come:

pip3 install mysql-connector 

Testare la connessione al database MySQL con Python

Per testare la connessione al database qui utilizziamo il connettore MySQL preinstallato e passiamo le credenziali alla funzione connect () come host, nome utente e password.

Sintassi per accedere a MySQL con Python:

import mysql.connectordb_connection = mysql.connector.connect(host="hostname",user="username",passwd="password")

Esempio,

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root")print(db_connection)

Produzione:

Qui l'output mostra la connessione creata con successo.

Creazione di database in MySQL utilizzando Python

La sintassi per creare un nuovo database in SQL è

CREATE DATABASE "database_name"

Ora creiamo database usando Python in MySQL

import mysql.connectordb_connection = mysql.connector.connect(host= "localhost",user= "root",passwd= "root")# creating database_cursor to perform SQL operationdb_cursor = db_connection.cursor()# executing cursor with execute method and pass SQL querydb_cursor.execute("CREATE DATABASE my_first_db")# get list of all databasesdb_cursor.execute("SHOW DATABASES")#print all databasesfor db in db_cursor:print(db)

Produzione:

L'immagine sopra mostra che il database my_first_db è stato creato

Crea una tabella in MySQL con Python

Creiamo una semplice tabella "studente" che ha due colonne.

Sintassi SQL:

CREATE TABLE student (id INT, name VARCHAR(255))

Esempio:

import mysql.connectordb_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)

Produzione:

 ('student',) 

Crea una tabella con chiave primaria

Creiamo una tabella Employee con tre colonne differenti. Aggiungeremo una chiave primaria nella colonna id con vincolo AUTO_INCREMENT

Sintassi SQL,

CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))

Esempio,

import mysql.connectordb_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 keydb_cursor.execute("CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))")#Get database tabledb_cursor.execute("SHOW TABLES")for table in db_cursor:print(table)

Produzione:

('employee',) ('student',)

Tabella ALTER in MySQL con Python

Il comando Alter viene utilizzato per modificare la struttura della tabella in SQL. Qui modificheremo la tabella Student e aggiungeremo una chiave primaria al campo id .

Sintassi SQL,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Esempio,

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root",database="my_first_db")db_cursor = db_connection.cursor()#Here we modify existing column iddb_cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")

Produzione:

Qui sotto puoi vedere che la colonna id è stata modificata.

Inserisci operazione con MySQL in Python:

Eseguiamo l'operazione di inserimento nella tabella del database MySQL che abbiamo già creato. Inseriremo i dati della tabella STUDENT e della tabella EMPLOYEE.

Sintassi SQL,

INSERT INTO student (id, name) VALUES (01, "John")INSERT INTO employee (id, name, salary) VALUES(01, "John", 10000)

Esempio,

import mysql.connectordb_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 datadb_cursor.execute(student_sql_query)#Execute cursor and pass query of employee and data of employeedb_cursor.execute(employee_sql_query)db_connection.commit()print(db_cursor.rowcount, "Record Inserted")

Produzione:

 2 Record Inserted