Python met MySQL: Connect, Create Database, Table, Insert (voorbeelden)

Inhoudsopgave:

Anonim

Om met MySQL te werken met Python, moet u enige kennis van SQL hebben

Laten we het eerst begrijpen voordat we diep gaan duiken

Wat is MySQL?

MySQL is een Open-Source-database en een van de beste soorten RDBMS (Relational Database Management System). Mede-oprichter van MySQLdb is Michael Widenius, en ook de naam MySQL is afgeleid van de dochter van Michael.

Hoe MySQL te installeren

Installeer MySQL in Linux / Unix:

Download het RPM-pakket voor Linux / Unix van de officiële site: https://www.mysql.com/downloads/

Gebruik in terminal de volgende opdracht

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

Om Linux in te checken

mysql --version

Installeer MySQL in Windows

Download MySQL-database exe van de officiële site en installeer zoals gebruikelijk normale installatie van software in Windows. Raadpleeg deze tutorial voor een stapsgewijze handleiding

Installeer MySQL Connector Library voor Python

Voor Python 2.7 of lager installeer je pip als:

pip install mysql-connector

Installeer voor Python 3 of hoger met pip3 als:

pip3 install mysql-connector 

Test de MySQL-databaseverbinding met Python

Om de databaseverbinding hier te testen, gebruiken we de vooraf geïnstalleerde MySQL-connector en geven we referenties door aan de connect () -functie zoals host, gebruikersnaam en wachtwoord.

Syntaxis voor toegang tot MySQL met Python:

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

Voorbeeld,

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

Uitgang:

Hier toont de uitvoer de verbinding die met succes is gemaakt.

Database maken in MySQL met Python

Syntaxis voor het maken van een nieuwe database in SQL is

CREATE DATABASE "database_name"

Nu maken we een database met Python in 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)

Uitgang:

Bovenstaande afbeelding laat zien dat de my_first_db database is aangemaakt

Maak een tabel in MySQL met Python

Laten we een eenvoudige tabel "student" maken met twee kolommen.

SQL-syntaxis:

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

Voorbeeld:

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)

Uitgang:

 ('student',) 

Maak een tabel met primaire sleutel

Laten we een Medewerkerstabel maken met drie verschillende kolommen. We zullen een primaire sleutel toevoegen in de id- kolom met de AUTO_INCREMENT-beperking

SQL-syntaxis,

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

Voorbeeld,

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)

Uitgang:

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

ALTER-tabel in MySQL met Python

De opdracht Alter wordt gebruikt voor het wijzigen van de tabelstructuur in SQL. Hier zullen we de studententabel wijzigen en een primaire sleutel toevoegen aan het id- veld.

SQL-syntaxis,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Voorbeeld,

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

Uitgang:

Hieronder kunt u zien dat de ID- kolom is gewijzigd.

Bewerking invoegen met MySQL in Python:

Laten we een invoegbewerking uitvoeren in de MySQL-databasetabel die we al hebben gemaakt. We zullen gegevens invoegen van de STUDENT-tabel en de EMPLOYEE-tabel.

SQL-syntaxis,

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

Voorbeeld,

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

Uitgang:

 2 Record Inserted