Соединитель Python MySQL это драйвер Python, который помогает интегрировать Python и MySQL. Эта библиотека Python MySQL позволяет выполнять преобразование между типами данных Python и MySQL. MySQL Connector API реализован с использованием чистого Python и не требует какой-либо сторонней библиотеки.
Этот Учебник по Python MySQL поможет научиться использовать MySQL с Python от основ до продвинутого уровня, включая все необходимые функции и запросы, подробно объясненные с помощью хороших примеров Python MySQL. Итак, давайте начнем.
Установка
Для установки Python-mysql-соединитель модуль, у которого должны быть Python и PIP, предварительно установлен в их системе. Если Python и pip уже установлены, введите в терминале следующую команду.
pip3 install mysql-connector-python
Примечание: Если Python отсутствует, пройдите, как установить Python на Windows и Линукс? и следуйте приведенным инструкциям.
Подключение к серверу MySQL
Мы можем подключиться к серверу MySQL с помощью метода connect().
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password"
)
print(dataBase)
# Disconnecting from the server
dataBase.close()
Выход:
<mysql.connector.connection_cext.CMySQLConnection object at 0x7f73f0191d00>
Примечание: Для получения дополнительной информации обратитесь к Подключите базу данных MySQL с помощью MySQL-коннектора Python.
Создание базы данных
После подключения к серверу MySQL давайте посмотрим, как создайте базу данных MySQL используя Python. Для этого мы сначала создадим объект cursor(), а затем передадим команду SQL в виде строки методу execute(). Команда SQL для создания базы данных.
CREATE DATABASE DATABASE_NAME
Пример:
Создание базы данных MySQL с помощью Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
# creating database
cursorObject.execute("CREATE DATABASE gfg")
Выход:
Создание таблиц
Для создание таблиц мы будем следовать аналогичному подходу написания SQL — команд в виде строк, а затем передадим их методу execute() объекта курсора. Команда SQL для создания таблицы является:
CREATE TABLE ( column_name_1 column_Data_type, column_name_2 column_Data_type, : : column_name_n column_Data_type );
Пример:
Создание таблицы MySQL с помощью Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
# creating table
studentRecord = """CREATE TABLE STUDENT (
NAME VARCHAR(20) NOT NULL,
BRANCH VARCHAR(50),
ROLL INT NOT NULL,
SECTION VARCHAR(5),
AGE INT
)"""
# table created
cursorObject.execute(studentRecord)
# disconnecting from server
dataBase.close()
Выход:
Вставка данных в таблицы
Для вставка данных в таблицу MySQL Вставить в используется запрос.
Синтаксис:
INSERT INTO table_name (column_names) VALUES (data)
Пример 1:
Вставка Одной Строки
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
sql = "INSERT INTO STUDENT (NAME, BRANCH, ROLL, SECTION, AGE)\
VALUES (%s, %s, %s, %s, %s)"
val = ("Ram", "CSE", "85", "B", "19")
cursorObject.execute(sql, val)
dataBase.commit()
# disconnecting from server
dataBase.close()
Выход:
Пример 2:
Вставка Нескольких Строк
Для вставки нескольких значений одновременно используется метод executemany(). Этот метод выполняет итерацию последовательности параметров, передавая текущий параметр методу выполнения.
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
sql = "INSERT INTO STUDENT (NAME, BRANCH, ROLL, SECTION, AGE)\
VALUES (%s, %s, %s, %s, %s)"
val = [("Nikhil", "CSE", "98", "A", "18"),
("Nisha", "CSE", "99", "A", "18"),
("Rohan", "MAE", "43", "B", "20"),
("Amit", "ECE", "24", "A", "21"),
("Anil", "MAE", "45", "B", "20"),
("Megha", "ECE", "55", "A", "22"),
("Sita", "CSE", "95", "A", "19")]
cursorObject.executemany(sql, val)
dataBase.commit()
# disconnecting from server
dataBase.close()
Выход:
Извлечение данных
Мы можем использовать выберите запрос в таблицах MySQL следующими способами:
- Чтобы выбрать определенные столбцы атрибутов из таблицы, мы записываем имена атрибутов.
SELECT attr1, attr2 FROM table_name
Чтобы выбрать все столбцы атрибутов из таблицы, мы используем символ звездочки»*».
SELECT * FROM table_name
Пример:
Выберите данные из таблицы MySQL с помощью Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query = "SELECT NAME, ROLL FROM STUDENT"
cursorObject.execute(query)
myresult = cursorObject.fetchall()
for x in myresult:
print(x)
# disconnecting from server
dataBase.close()
Выход:
Где пункт
Where clause используется в базе данных MySQL для фильтрации данных в соответствии с требуемым условием. Вы можете извлекать, удалять или обновлять определенный набор данных в базе данных MySQL с помощью предложения where.
Синтаксис:
SELECT column1, column2, …. cloumnN FROM [TABLE NAME] WHERE [CONDITION];
Пример:
Предложение Where в MySQL с использованием Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query = "SELECT * FROM STUDENT where AGE >=20"
cursorObject.execute(query)
myresult = cursorObject.fetchall()
for x in myresult:
print(x)
# disconnecting from server
dataBase.close()
Выход:
('Rohan', 'MAE', 43, 'B', 20) ('Amit', 'ECE', 24, 'A', 21) ('Anil', 'MAE', 45, 'B', 20) ('Megha', 'ECE', 55, 'A', 22)
Порядок по пунктам
Order By используется для упорядочения результирующего набора в порядке возрастания или убывания. По умолчанию он всегда находится в порядке возрастания, если не указано “DESC”, что упорядочивает его в порядке убывания. ” ASC » также можно использовать, чтобы явно расположить его в порядке возрастания. Но, как правило, это не делается таким образом, так как по умолчанию это уже делается.
Синтаксис:
SELECT column1, column2 FROM table_name ORDER BY column_name ASC|DESC;
Пример:
Предложение Order By в MySQL с использованием Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query = "SELECT * FROM STUDENT ORDER BY NAME DESC"
cursorObject.execute(query)
myresult = cursorObject.fetchall()
for x in myresult:
print(x)
# disconnecting from server
dataBase.close()
Выход:
Предельное положение
То Предложение об ограничении используется в SQL для контроля или ограничения количества записей в результирующем наборе, возвращаемом из сгенерированного запроса. По умолчанию SQL выдает необходимое количество записей, начиная с верхнего, но позволяет использовать ключевое слово OFFSET. OFFSET позволяет начать с пользовательской строки и получить необходимое количество результирующих строк.
Синтаксис:
SELECT * FROM tablename LIMIT limit; SELECT * FROM tablename LIMIT limit OFFSET offset;
Пример:
Предложение Limit в MySQL с использованием Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query = "SELECT * FROM STUDENT LIMIT 2 OFFSET 1"
cursorObject.execute(query)
myresult = cursorObject.fetchall()
for x in myresult:
print(x)
# disconnecting from server
dataBase.close()
Выход:
('Nikhil', 'CSE', 98, 'A', 18) ('Nisha', 'CSE', 99, 'A', 18)
Обновление данных
Запрос на обновление используется для изменения существующих значений в базе данных. С помощью обновления определенное значение может быть исправлено или обновлено. Это влияет только на данные, а не на структуру таблицы. Основное преимущество, предоставляемое этой командой, заключается в том, что она сохраняет точность таблицы.
Синтаксис:
UPDATE tablename SET ="new value" WHERE ="old value";
Пример:
Обновите таблицу MySQL с помощью Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query = "UPDATE STUDENT SET AGE = 23 WHERE Name ='Ram'"
cursorObject.execute(query)
dataBase.commit()
# disconnecting from server
dataBase.close()
Выход:
Удаление данных из таблицы
Мы можем использовать Удалить запрос чтобы удалить данные из таблицы в MySQL.
Синтаксис:
DELETE FROM TABLE_NAME WHERE ATTRIBUTE_NAME = ATTRIBUTE_VALUE
Пример:
Удалите данные из таблицы MySQL с помощью Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query = "DELETE FROM STUDENT WHERE NAME = 'Ram'"
cursorObject.execute(query)
dataBase.commit()
# disconnecting from server
dataBase.close()
Выход:
Выпадающие таблицы
Отбросьте команду влияет на структуру таблицы, а не на данные. Он используется для удаления уже существующей таблицы. В случаях, когда вы не уверены, существует ли удаляемая таблица или нет, используется команда «DROP TABLE IF EXISTS». Оба случая будут рассмотрены в следующих примерах.
Синтаксис:
DROP TABLE tablename; DROP TABLE IF EXISTS tablename;
Сначала давайте посмотрим список таблиц в нашей базе данных.
Мы видим, что есть две таблицы для студентов, поэтому давайте опустим вторую таблицу.
Пример 1:
Отбросьте таблицу в MySQL с помощью Python
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query ="DROP TABLE Student;"
cursorObject.execute(query)
dataBase.commit()
# disconnecting from server
dataBase.close()
Выход:
Пример 2:
Удалите таблицу, если она существует
# importing required libraries
import mysql.connector
dataBase = mysql.connector.connect(
host ="localhost",
user ="user",
passwd ="password",
database = "gfg"
)
# preparing a cursor object
cursorObject = dataBase.cursor()
query ="Drop Table if exists Employee;"
cursorObject.execute(query)
dataBase.commit()
# disconnecting from server
dataBase.close()
Приведенный выше пример не создаст никаких ошибок и выходных данных, потому что мы использовали запрос «Таблица отбрасывания «»существует». Если мы просто будем использовать сотрудника Drop-таблицы, то ProgrammingError: 1051 (42S02): Unknown table ‘gfg.Employee’.
Упражнения на Python MySQL
Работа с таблицами
- Как вставить значения в таблицу сервера MySQL с помощью Python?
- Как показать все таблицы в MySQL с помощью Python?
- Как получить размер таблицы в MySQL с помощью Python?
- Как переименовать таблицу MySQL в Python?
- Как скопировать таблицу в MySQL с помощью Python?
- Как скопировать определение таблицы в MySQL с помощью Python?
- Получить идентификатор после ВСТАВКИ в базу данных MySQL с помощью Python
- Как использовать оператор IF в MySQL с использованием Python
- Удаление элемента из таблицы в MySQL с помощью Python
- Предоставьте разрешения на таблицы и столбцы MySQL с помощью Python
Работа над колонками
- Как подсчитать количество строк в таблице MySQL в Python?
- Подсчет столбцов таблицы SQL с помощью Python
- Как добавить столбец в таблицу MySQL в Python?
- Как получить минимальное и максимальное значение столбца таблицы MySQL с помощью Python?
- Как выполнить арифметические вычисления по столбцам таблицы MySQL с помощью Python?
- Как объединить значения столбцов таблицы MySQL с помощью Python?
- Добавьте комментарий к столбцу в MySQL с помощью Python
- Предоставьте разрешения на таблицы и столбцы MySQL с помощью Python