Python z MySQL: povezovanje, ustvarjanje baze podatkov, tabela, vstavljanje (primeri)

Kazalo:

Anonim

Če želite delati z MySQL s pomočjo Pythona, morate imeti nekaj znanja SQL

Preden se potopimo globoko, razumemo

Kaj je MySQL?

MySQL je odprtokodna baza podatkov in ena najboljših vrst RDBMS (sistem relacijskega upravljanja baz podatkov). Soustanovitelj MySQLdb je Michael Widenius, ime MySQL pa izhaja iz hčere Michaela.

Kako namestiti MySQL

Namestite MySQL v Linux / Unix:

Prenesite paket RPM za Linux / Unix z uradne strani: https://www.mysql.com/downloads/

V terminalu uporabite naslednji ukaz

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

Če želite preveriti Linux

mysql --version

Namestite MySQL v sistem Windows

Prenesite bazo podatkov MySQL exe z uradne strani in namestite običajno programsko opremo v sistem Windows. Za navodila po korakih si oglejte to vadnico

Namestite knjižnico MySQL Connector za Python

Za Python 2.7 ali starejšo namestitev z uporabo pip kot:

pip install mysql-connector

Za Python 3 ali novejšo različico namestite z uporabo pip3 kot:

pip3 install mysql-connector 

Preizkusite povezavo zbirke podatkov MySQL z Pythonom

Za preizkus povezave z bazo podatkov uporabljamo vnaprej nameščen konektor MySQL in poverilnice posredujemo v funkcijo connect (), kot so gostitelj, uporabniško ime in geslo.

Sintaksa za dostop do MySQL s Pythonom:

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

Primer,

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

Izhod:

Tu izhod prikazuje povezavo, ki je bila uspešno ustvarjena.

Ustvarjanje baze podatkov v MySQL z uporabo Pythona

Sintaksa za ustvarjanje nove baze podatkov v SQL je

CREATE DATABASE "database_name"

Zdaj ustvarjamo bazo podatkov s pomočjo Pythona v 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)

Izhod:

Tu zgoraj slika prikazuje, da je ustvarjena baza podatkov my_first_db

Ustvari tabelo v MySQL s Pythonom

Ustvarimo preprosto tabelo "študent", ki ima dva stolpca.

Sintaksa SQL:

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

Primer:

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)

Izhod:

 ('student',) 

Ustvari tabelo s primarnim ključem

Ustvarimo tabelo Employee s tremi različnimi stolpci. V stolpec id bomo dodali primarni ključ z omejitvijo AUTO_INCREMENT

Sintaksa SQL,

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

Primer,

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)

Izhod:

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

Tabela ALTER v MySQL s Pythonom

Ukaz Alter se uporablja za spreminjanje strukture tabele v SQL. Tu bomo spremenili študentsko tabelo in v polje id dodali primarni ključ .

Sintaksa SQL,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Primer,

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

Izhod:

Spodaj lahko vidite spremenjen stolpec id .

Vstavi delovanje z MySQL v Python:

Izvedimo operacijo vstavljanja v tabelo MySQL Database, ki smo jo že ustvarili. Vstavili bomo podatke v tabelo ŠTUDENT in tabela ZAPOSLENI.

Sintaksa SQL,

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

Primer,

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

Izhod:

 2 Record Inserted