Python med MySQL: Anslut, skapa databas, tabell, infoga (exempel)

Innehållsförteckning:

Anonim

För att kunna arbeta med MySQL med Python måste du ha viss kunskap om SQL

Låt oss förstå innan vi dyker djupt

Vad är MySQL?

MySQL är en databas med öppen källkod och en av de bästa typerna av RDBMS (Relational Database Management System). Medgrundare av MySQLdb är Michael Widenius, och MySQL-namnet kommer från Michael dotter.

Hur man installerar MySQL

Installera MySQL i Linux / Unix:

Ladda ner RPM-paket för Linux / Unix från den officiella webbplatsen: https://www.mysql.com/downloads/

I terminal används följande kommando

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

För att checka in Linux

mysql --version

Installera MySQL i Windows

Ladda ner MySQL-databasen exe från den officiella webbplatsen och installera som vanligt normal installation av programvara i Windows. Se den här guiden för en steg-för-steg-guide

Installera MySQL Connector Library för Python

För Python 2.7 eller lägre installera med pip som:

pip install mysql-connector

För Python 3 eller högre version installera med pip3 som:

pip3 install mysql-connector 

Testa MySQL-databasanslutningen med Python

För att testa databasanslutningen här använder vi förinstallerad MySQL-kontakt och skickar referenser till connect () -funktionen som värd, användarnamn och lösenord.

Syntax för att komma åt MySQL med Python:

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

Exempel,

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

Produktion:

Här visar utgången den anslutning som har skapats.

Skapa databas i MySQL med Python

Syntax för att skapa ny databas i SQL är

CREATE DATABASE "database_name"

Nu skapar vi databas med 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)

Produktion:

Här ovan bilden visar att my_first_db- databasen skapas

Skapa en tabell i MySQL med Python

Låt oss skapa en enkel tabell "student" som har två kolumner.

SQL-syntax:

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

Exempel:

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)

Produktion:

 ('student',) 

Skapa en tabell med primär nyckel

Låt oss skapa en anställdstabell med tre olika kolumner. Vi lägger till en primär nyckel i id- kolumnen med begränsningen AUTO_INCREMENT

SQL-syntax,

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

Exempel,

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)

Produktion:

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

ALTER-tabellen i MySQL med Python

Alter-kommandot används för modifiering av tabellstruktur i SQL. Här ändrar vi studenttabellen och lägger till en primär nyckel i id- fältet.

SQL-syntax,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Exempel,

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

Produktion:

Här nedan kan du se id- kolumnen har ändrats.

Infoga operation med MySQL i Python:

Låt oss utföra insättningsoperationer i MySQL-databastabellen som vi redan skapar. Vi infogar data i tabellen STUDENT och ANSTÄLLDA.

SQL-syntax,

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

Exempel,

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

Produktion:

 2 Record Inserted