„Python“ su „MySQL“: prisijungimas, duomenų bazės kūrimas, lentelė, įterpimas (pavyzdžiai)

Turinys:

Anonim

Norėdami dirbti su „MySQL“ naudodami „Python“, turite žinoti apie SQL

Prieš nerdami gilyn, supraskime

Kas yra „MySQL“?

„MySQL“ yra atvirojo kodo duomenų bazė ir vienas iš geriausių RDBMS (Reliacinių duomenų bazių valdymo sistemos) tipų. „MySQLdb“ įkūrėjas yra Michaelas Wideniusas, taip pat „MySQL“ vardas kilęs iš Michaelo dukters.

Kaip įdiegti MySQL

Įdiekite „MySQL“ sistemoje „Linux / Unix“:

Atsisiųskite „Linux“ / „Unix“ RPM paketą iš oficialios svetainės: https://www.mysql.com/downloads/

Terminale naudokite šią komandą

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

Norėdami patikrinti „Linux“

mysql --version

Įdiekite „MySQL“ sistemoje „Windows“

Atsisiųskite „MySQL“ duomenų bazę exe iš oficialios svetainės ir įdiekite įprastą „Windows“ programinės įrangos diegimą. Žr. Šią pamoką, kad gautumėte nuoseklų vadovą

Įdiekite „MySQL Connector Library“, skirtą „Python“

Jei naudojate „Python 2.7“ ar senesnę versiją, naudokite „pip“ kaip:

pip install mysql-connector

Jei naudojate „Python 3“ ar naujesnę versiją, įdiekite naudodami „pip3“ kaip:

pip3 install mysql-connector 

Išbandykite „MySQL“ duomenų bazės ryšį su „Python“

Norėdami išbandyti duomenų bazės ryšį, čia mes naudojame iš anksto įdiegtą „MySQL“ jungtį ir perduodame kredencialus į connect () funkciją, pvz., Pagrindinį kompiuterį, vartotojo vardą ir slaptažodį.

Sintaksė norint pasiekti „MySQL“ naudojant „Python“:

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

Pavyzdys,

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

Išvestis:

Čia išvestis rodo sėkmingai sukurtą ryšį.

Duomenų bazės kūrimas MySQL naudojant „Python“

Sintaksė sukurti naują duomenų bazę SQL yra

CREATE DATABASE "database_name"

Dabar mes kuriame duomenų bazę naudodami „Python“ 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)

Išvestis:

Aukščiau pateiktame paveikslėlyje parodyta, kad sukurta „ my_first_db“ duomenų bazė

Sukurkite „MySQL“ lentelę naudodami „Python“

Sukurkime paprastą lentelę „studentas“, kurioje yra du stulpeliai.

SQL sintaksė:

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

Pavyzdys:

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)

Išvestis:

 ('student',) 

Sukurkite lentelę su pagrindiniu raktu

Sukurkime lentelę „ Darbuotojas“ su trimis skirtingais stulpeliais. Į ID stulpelį pridėsime pagrindinį raktą su AUTO_INCREMENT apribojimu

SQL sintaksė,

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

Pavyzdys,

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)

Išvestis:

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

ALTER lentelė MySQL su Python

Alter komanda naudojama lentelės struktūrai modifikuoti SQL. Čia mes pakeisime Studentų lentelę ir pridėsime pagrindinį raktą į ID lauką.

SQL sintaksė,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Pavyzdys,

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

Išvestis:

Čia galite pamatyti, kaip pakeistas ID stulpelis.

Įterpti operaciją su „MySQL“ į „Python“:

Atlikime įterpimo operaciją jau sukurtoje „MySQL Database“ lentelėje. Įterpsime lentelės „STUDENT“ ir „EMPLOYEE“ duomenis.

SQL sintaksė,

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

Pavyzdys,

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

Išvestis:

 2 Record Inserted