Python z MySQL: Połącz, Utwórz bazę danych, Tabela, Wstaw (Przykłady)

Spisie treści:

Anonim

Aby pracować z MySQL za pomocą Pythona, musisz mieć pewną wiedzę na temat SQL

Zanim zanurzymy się głęboko, zrozummy

Co to jest MySQL?

MySQL to baza danych Open Source i jeden z najlepszych typów RDBMS (Relational Database Management System). Współzałożycielem MySQLdb jest Michael Widenius, a także nazwa MySQL pochodzi od córki Michaela.

Jak zainstalować MySQL

Zainstaluj MySQL w systemie Linux / Unix:

Pobierz pakiet RPM dla systemu Linux / Unix z oficjalnej strony: https://www.mysql.com/downloads/

W terminalu użyj następującego polecenia

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

Aby sprawdzić w systemie Linux

mysql --version

Zainstaluj MySQL w systemie Windows

Pobierz bazę danych MySQL exe z oficjalnej strony i zainstaluj jak zwykle normalną instalację oprogramowania w systemie Windows. Zapoznaj się z tym samouczkiem, aby uzyskać przewodnik krok po kroku

Zainstaluj bibliotekę MySQL Connector dla języka Python

W przypadku Pythona 2.7 lub starszego zainstaluj za pomocą pip jako:

pip install mysql-connector

W przypadku Pythona 3 lub nowszej wersji zainstaluj za pomocą pip3 jako:

pip3 install mysql-connector 

Przetestuj połączenie z bazą danych MySQL za pomocą języka Python

Aby przetestować tutaj połączenie z bazą danych, używamy wstępnie zainstalowanego konektora MySQL i przekazujemy dane uwierzytelniające do funkcji connect (), takich jak host, nazwa użytkownika i hasło.

Składnia dostępu do MySQL za pomocą Pythona:

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

Przykład,

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

Wynik:

Tutaj dane wyjściowe pokazują, że połączenie zostało pomyślnie utworzone.

Tworzenie bazy danych w MySQL przy użyciu Pythona

Składnia tworzenia nowej bazy danych w SQL to

CREATE DATABASE "database_name"

Teraz tworzymy bazę danych za pomocą Pythona w 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)

Wynik:

Powyższy obrazek pokazuje, że baza danych my_first_db została utworzona

Utwórz tabelę w MySQL za pomocą Pythona

Stwórzmy prostą tabelę „student”, która ma dwie kolumny.

Składnia SQL:

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

Przykład:

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)

Wynik:

 ('student',) 

Utwórz tabelę z kluczem podstawowym

Stwórzmy pracownika tabelę z trzech kolumn. Dodamy klucz podstawowy w kolumnie id z ograniczeniem AUTO_INCREMENT

Składnia SQL,

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

Przykład,

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)

Wynik:

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

ALTER tabela w MySQL z Pythonem

Polecenie Alter służy do modyfikacji struktury tabeli w SQL. Tutaj zmienimy tabelę Studentów i dodamy klucz podstawowy do pola id .

Składnia SQL,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Przykład,

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

Wynik:

Poniżej widać, że kolumna id została zmodyfikowana.

Wstaw operację z MySQL w Pythonie:

Wykonajmy operację wstawiania w utworzonej już przez nas tabeli MySQL. Wstawimy dane z tabeli STUDENT i tabeli PRACOWNIK.

Składnia SQL,

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

Przykład,

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

Wynik:

 2 Record Inserted