Pentru a lucra cu MySQL folosind Python, trebuie să aveți cunoștințe de SQL
Înainte de a scufunda adânc, să înțelegem
Ce este MySQL?
MySQL este o bază de date Open-Source și unul dintre cele mai bune tipuri de RDBMS (Relational Database Management System). Cofondatorul MySQLdb este al lui Michael Widenius și, de asemenea, numele MySQL derivă din fiica lui Michael.
Cum se instalează MySQL
Instalați MySQL în Linux / Unix:
Descărcați pachetul RPM pentru Linux / Unix de pe site-ul oficial: https://www.mysql.com/downloads/
În terminal utilizați următoarea comandă
rpm -i
Example rpm -i MySQL-5.0.9.0.i386.rpm
Pentru a verifica Linux
mysql --version
Instalați MySQL în Windows
Descărcați baza de date MySQL exe de pe site-ul oficial și instalați ca de obicei instalarea normală a software-ului în Windows. Consultați acest tutorial pentru un ghid pas cu pas
Instalați MySQL Connector Library pentru Python
Pentru Python 2.7 sau o instalare inferioară utilizând pip ca:
pip install mysql-connector
Pentru Python 3 sau o versiune superioară, instalați utilizând pip3 ca:
pip3 install mysql-connector
Testați conexiunea MySQL Database cu Python
Pentru a testa conexiunea la baza de date aici, folosim conector MySQL preinstalat și trecem acreditările în funcția connect () , cum ar fi gazda, numele de utilizator și parola.
Sintaxa pentru a accesa MySQL cu Python:
import mysql.connectordb_connection = mysql.connector.connect(host="hostname",user="username",passwd="password")
Exemplu,
import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root")print(db_connection)
Ieșire:
Aici rezultatul arată conexiunea creată cu succes.
Crearea bazei de date în MySQL folosind Python
Sintaxa pentru a crea o bază de date nouă în SQL este
CREATE DATABASE "database_name"
Acum creăm baza de date folosind Python în 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)
Ieșire:
Aici imaginea de mai sus arată baza de date my_first_db este creată
Creați un tabel în MySQL cu Python
Să creăm un tabel simplu „student” care are două coloane.
Sintaxa SQL:
CREATE TABLE student (id INT, name VARCHAR(255))
Exemplu:
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)
Ieșire:
('student',)
Creați un tabel cu cheia principală
Să creăm un tabel pentru angajați cu trei coloane diferite. Vom adăuga o cheie principală în coloana id cu constrângere AUTO_INCREMENT
Sintaxa SQL,
CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))
Exemplu,
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)
Ieșire:
('employee',) ('student',)
Tabel ALTER în MySQL cu Python
Comanda Alter este utilizată pentru modificarea structurii tabelului în SQL. Aici vom modifica tabelul Student și vom adăuga o cheie primară în câmpul id .
Sintaxa SQL,
ALTER TABLE student MODIFY id INT PRIMARY KEY
Exemplu,
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")
Ieșire:
Aici mai jos puteți vedea coloana id modificată.
Introduceți operațiunea cu MySQL în Python:
Să efectuăm operația de inserare în tabelul MySQL Database pe care deja îl creăm. Vom insera datele din tabelul STUDENT și tabelul ANGAJAT.
Sintaxa SQL,
INSERT INTO student (id, name) VALUES (01, "John")INSERT INTO employee (id, name, salary) VALUES(01, "John", 10000)
Exemplu,
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")
Ieșire:
2 Record Inserted