Python med MySQL: Koble til, Opprett database, Tabell, Sett inn (eksempler)

Innholdsfortegnelse:

Anonim

For å kunne jobbe med MySQL ved bruk av Python, må du ha litt kunnskap om SQL

La oss forstå før du dykker dypt

Hva er MySQL?

MySQL er en åpen kildekode-database og en av de beste typene RDBMS (Relational Database Management System). Medstifter av MySQLdb er Michael Widenius, og MySQL-navnet kommer fra datteren til Michael.

Hvordan installere MySQL

Installer MySQL i Linux / Unix:

Last ned RPM-pakke for Linux / Unix fra det offisielle nettstedet: https://www.mysql.com/downloads/

I terminal bruk følgende kommando

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

For å sjekke inn Linux

mysql --version

Installer MySQL i Windows

Last ned MySQL database exe fra det offisielle nettstedet og installer som vanlig normal installasjon av programvare i Windows. Se denne veiledningen for en trinnvis veiledning

Installer MySQL Connector Library for Python

For Python 2.7 eller lavere installere ved hjelp av pip som:

pip install mysql-connector

For Python 3 eller høyere versjon, installer ved hjelp av pip3 som:

pip3 install mysql-connector 

Test MySQL-databaseforbindelsen med Python

For å teste databaseforbindelsen her bruker vi forhåndsinstallert MySQL-kontakt og sender legitimasjon til connect () -funksjonen som vert, brukernavn og passord.

Syntaks for å få tilgang til MySQL med Python:

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

Eksempel,

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

Produksjon:

Her viser utgangen forbindelsen som ble opprettet.

Opprette database i MySQL ved hjelp av Python

Syntaks for å opprette ny database i SQL er

CREATE DATABASE "database_name"

Nå oppretter vi database ved hjelp av Python i 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)

Produksjon:

Her over bildet viser databasen my_first_db er opprettet

Lag en tabell i MySQL med Python

La oss lage en enkel tabell "student" som har to kolonner.

SQL-syntaks:

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

Eksempel:

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)

Produksjon:

 ('student',) 

Lag en tabell med primærnøkkel

La oss lage en ansattstabell med tre forskjellige kolonner. Vi vil legge til en primærnøkkel i id- kolonnen med AUTO_INCREMENT-begrensning

SQL-syntaks,

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

Eksempel,

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)

Produksjon:

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

ALTER-tabellen i MySQL med Python

Alter-kommandoen brukes til modifisering av tabellstruktur i SQL. Her vil vi endre studenttabellen og legge til en primærnøkkel til id- feltet.

SQL-syntaks,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Eksempel,

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

Produksjon:

Her nedenfor kan du se id- kolonnen er endret.

Sett inn drift med MySQL i Python:

La oss utføre innsettingsoperasjon i MySQL Database-tabellen som vi allerede oppretter. Vi vil sette inn data i STUDENT-tabellen og ANSATTE-tabellen.

SQL-syntaks,

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

Eksempel,

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

Produksjon:

 2 Record Inserted