Python cu MySQL: Conectare, creare bază de date, tabel, inserare (exemple)

Cuprins:

Anonim

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