Python con MySQL Connettività: database e tabella [Esempi]

Per poter utilizzare MySQL connettività con Python, devi avere una certa conoscenza di SQL

Prima di immergerci in profondità, capiamo

Che cos'è la MySQL?

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

Come installare MySQL Connettore Python on Windows, Linux/Unix

Installazione MySQL su 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 <Package_name>
Example   rpm -i MySQL-5.0.9.0.i386.rpm

Per verificare in Linux

mysql --version

Installazione MySQL in Windows

Scaricare MySQL exe del database da sito ufficiale e installa come al solito la normale installazione del software in Windows. Riferisci questo lezione, per una guida passo passo

Come installare MySQL Libreria di connettori per Python

Ecco come connettersi MySQL con Python:

Per Python Installazione 2.7 o precedente utilizzando pip come:

pip install mysql-connector

Per Python 3 o versione successiva installa utilizzando pip3 come:

pip3 install mysql-connector

Prova il MySQL Connessione al database con Python

Testare MySQL connettività del database in Python qui utilizzeremo il file preinstallato MySQL connettore e passare le credenziali in Collegare() funzionano come host, nome utente e password come mostrato di seguito Python MySQL esempio di connettore.

Sintassi per accedere MySQL con Python:

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

Esempio:

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

Uscita:

<mysql.connector.connection.MySQLConnection object at 0x000002338A4C6B00>

Qui l'output mostra la connessione creata correttamente.

Creazione del database in MySQL utilizzando Python

La sintassi per creare un nuovo database in SQL è

CREATE DATABASE "database_name"

Ora creiamo il database utilizzando la programmazione del database in 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)

Uscita:

Creazione del database in MySQL

L'immagine qui sopra mostra il il mio_primo_db viene creato il database

Crea una tabella in MySQL con Python

Creiamo una semplice tabella "studente" che ha due colonne come mostrato di seguito MySQL connettore Python esempio.

sintassi SQL:

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

Esempio:

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)

Uscita:

 ('student',)

Crea una tabella con chiave primaria

Creiamo un Dipendente tabella con tre colonne diverse. Aggiungeremo una chiave primaria id colonna con vincolo AUTO_INCREMENT come mostrato di seguito Python progetto con connettività al database.

sintassi SQL:

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

Esempio:

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)

Uscita:

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

Tabella ALTER in MySQL con Python

Il comando Alter viene utilizzato per modificare la struttura della tabella in SQL. Qui modificheremo studente tabella e aggiungi a chiave primaria ai id campo come mostrato di seguito Python MySQL progetto del connettore.

sintassi SQL:

ALTER TABLE student MODIFY id INT PRIMARY KEY

Esempio:

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")

Uscita:

Qui sotto potete vedere il id la colonna viene modificata.

Tabella ALTER in MySQL

inserire Operazione con MySQL in Python:

Eseguiamo l'operazione di inserimento in MySQL Tabella del database che abbiamo già creato. Inseriremo i dati della tabella STUDENTE e della tabella DIPENDENTE.

sintassi SQL:

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

Esempio:

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")

Uscita:

 2 Record Inserted

Controlla anche: - Python Tutorial per principianti: nozioni di base sulla programmazione [PDF]