Python with MySQL Connectiviteit: Database en tabel [Voorbeelden]

โšก Slimme samenvatting

Python maakt verbinding met een MySQL database met behulp van de mysql-connector bibliotheek. Hier leer je hoe je de connector installeert en verbinding maakt met de database. MySQLDatabases en tabellen aanmaken, primaire sleutels toevoegen, tabellen wijzigen en records invoegen, met voorbeelden.

  • ???? Connect: mysql.connector.connect() links Python naar MySQL met host en inloggegevens.
  • ๏ธ Maken: Voer CREATE DATABASE en CREATE TABLE uit via een cursor.
  • โž• Plaats: Voer een INSERT-query uit met `execute()` en sla de records vervolgens op met `commit()`.
  • ๐Ÿค– AI-ondersteuning: AI-tools zoals Copilot genereren MySQL De connectorcode wordt direct verzonden.

Python with MySQL Connectiviteit

Om te kunnen gebruiken MySQL connectiviteit met Python, je moet er enige kennis van hebben SQL

Voordat we diep duiken, laten we het begrijpen

Wat is MySQL?

MySQL is een open-sourcedatabase en een van de beste typen RDBMS (Relational Database Management System). Mede-oprichter van MySQLdb is van Michael Widenius, en ook MySQL naam is afgeleid van de dochter van Michael.

Hoe te installeren MySQL connector Python on Windows,Linux/Unix

Install MySQL onder Linux/Unix:

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

Gebruik in de terminal de volgende opdracht

rpm  -i <Package_name>
Example   rpm -i MySQL-5.0.9.0.i386.rpm

Om Linux in te checken

mysql --version

Install MySQL in Windows

Downloaden MySQL database-exe van officiรซle site en installeer zoals gebruikelijk de normale installatie van software in Windows. Raadpleeg dit zelfstudie, voor een stapsgewijze handleiding

Hoe te installeren MySQL Connectorbibliotheek voor Python

Hier ziet u hoe u verbinding kunt maken MySQL with Python:

Bij Python 2.7 of lager installeren met pip als:

pip install mysql-connector

Bij Python 3 of hogere versie installeren met pip3 als:

pip3 install mysql-connector

Test de MySQL Databaseverbinding met Python

Testen MySQL databaseconnectiviteit in Python hier gebruiken we vooraf geรฏnstalleerd MySQL connector en geef de inloggegevens door aansluiten() functioneren zoals host, gebruikersnaam en wachtwoord zoals hieronder weergegeven Python MySQL voorbeeld van een connector.

Syntaxis om toegang te krijgen MySQL with Python:

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

Voorbeeld:

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

uitgang:

<mysql.connector.connection.MySQLConnection object at 0x000002338A4C6B00>

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

Database aanmaken in MySQL gebruik Python

Syntaxis voor het maken van een nieuwe database in SQL is

CREATE DATABASE "database_name"

Nu maken we een database met behulp van databaseprogrammering in Python

import mysql.connector
  db_connection = mysql.connector.connect(
  host= "localhost",
  user= "root",
  passwd= "root"
  )
# creating database_cursor to perform SQL operation
db_cursor = db_connection.cursor()
# executing cursor with execute method and pass SQL query
db_cursor.execute("CREATE DATABASE my_first_db")
# get list of all databases
db_cursor.execute("SHOW DATABASES")
#print all databases
for db in db_cursor:
	print(db)

uitgang:

Database aanmaken in MySQL

Hierboven toont de afbeelding de mijn_eerste_db databank wordt aangemaakt

Maak een tabel aan MySQL with Python

Laten we een eenvoudige tabel โ€œstudentโ€ maken die twee kolommen heeft, zoals hieronder weergegeven MySQL connector Python voorbeeld.

SQL-syntaxis:

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

Voorbeeld:

import mysql.connector
  db_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 maken Werknemer tabel met drie verschillende kolommen. We zullen een primaire sleutel toevoegen id kolom met AUTO_INCREMENT-beperking, zoals hieronder weergegeven Python project met databaseconnectiviteit.

SQL-syntaxis:

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

Voorbeeld:

import mysql.connector
  db_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 key
db_cursor.execute("CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))")
#Get database table
db_cursor.execute("SHOW TABLES")
for table in db_cursor:
	print(table)

uitgang:

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

ALTER-tabel in MySQL with Python

De opdracht Alter wordt gebruikt voor het wijzigen van de tabelstructuur in SQL. Hier zullen we veranderen Student tabel en voeg een toe hoofdsleutel aan de id veld zoals hieronder weergegeven Python MySQL connectorproject.

SQL-syntaxis:

ALTER TABLE student MODIFY id INT PRIMARY KEY

Voorbeeld:

import mysql.connector
  db_connection = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="root",
  database="my_first_db"
  )
db_cursor = db_connection.cursor()
#Here we modify existing column id
db_cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")

uitgang:

Hieronder ziet u de id kolom is gewijzigd.

ALTER-tabel in MySQL

Invoegen Operamet MySQL in Python:

Laten we de invoegbewerking uitvoeren in MySQL Databasetabel die we al hebben gemaakt. We voegen gegevens in 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.connector
  db_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 data
db_cursor.execute(student_sql_query)
#Execute cursor and pass query of employee and data of employee
	db_cursor.execute(employee_sql_query)
db_connection.commit()
print(db_cursor.rowcount, "Record Inserted")

uitgang:

 2 Record Inserted

Veelgestelde vragen

Installeer mysql-connector met pip en roep vervolgens mysql.connector.connect() aan met je host, gebruiker en wachtwoord om een โ€‹โ€‹verbindingsobject te verkrijgen.

Maak een cursor aan en voer vervolgens cursor.execute('CREATE DATABASE name') uit. Gebruik SHOW DATABASES om te bevestigen dat de cursor is aangemaakt.

Maak verbinding, creรซer een cursor en voer een CREATE TABLE-instructie uit. Voeg AUTO_INCREMENT PRIMARY KEY toe om de id-kolom automatisch te nummeren.

Voer een SELECT-query uit met de cursor en roep vervolgens fetchall() aan voor alle rijen of fetchone() voor รฉรฉn enkele rij.

Voer een UPDATE- of DELETE-instructie uit met cursor.execute() en vervolgens commit(). Voeg altijd een WHERE-clausule toe om specifieke rijen te selecteren.

AI-assistenten zoals GitHub Copilot vullen connectorcode automatisch aan, genereren CRUD-query's en suggereren geparameteriseerde statements die SQL-injectie voorkomen.

Ja. Door AI aangedreven tools schrijven verbindings- en CRUD-functies, koppelen tabellen aan klassen en voegen foutafhandeling toe voor mislukte query's.

De commit()-functie slaat wijzigingen permanent op. Zonder deze functie worden INSERT-, UPDATE- en DELETE-bewerkingen teruggedraaid wanneer de verbinding wordt verbroken, waardoor gegevens verloren gaan.

Vat dit bericht samen met: