Студия Питониста | Python
150 subscribers
40 photos
10 files
23 links
В канале вы найдёте множество полезных материалов про Python: практичные статьи, увлекательные обучалки и ещё много чего.

По вопросам и предложениям - @NeuroBot_ad.
Download Telegram
📜 СУБД SQLite

Является одной из самых популярных систем управления базами данных в Python, идеально подходит для относительно небольших проектов. Она достаточно проста, а также кроссплатформенна.

Важная (и удобная) особенность — SQLite хранит БД на диске в виде файла. Это означает, что вам не обязательно устанавливать СУБД на сервер и общаться с ней через клиента (как это делают большинство других СУБД).

Взаимодействие с SQLite происходит в Python через специальную встроенную библиотеку:
import sqlite3


👌 В ближайшее время мы рассмотрим возможность использования всех функций этой СУБД в канале под хештегом #SQLite.

💬 Если у вас есть какие-то конкретные пожелания по изучению, то напишите их в комментариях под этим постом. Обязательно обсудим!
👍62
🪢 SQLite: Формальности

Формальности это лишь потому, что в обычном SQL подобных действий не требуется.

Для начала импортируем встроенную библиотеку Python для взаимодействия с СУБД SQLite:
import sqlite3


Затем нам нужно указать, с каким файлом мы работаем (файл с нашей базой данных):
import sqlite3

conn = sqlite3.connect("database.db")

Если файла не существует, он будет создан. Расширение файлов - ".db".

Затем создадим специальный объект курсора, который впоследствии нам поможет отправлять запросы в нашу СУБД:
import sqlite3

conn = sqlite3.connect("database.db")
cur = conn.cursor()


Для того, чтобы непосредственно отправить любой SQL-запрос в нашу СУБД мы можем использовать метод execute() из объекта курсора:
import sqlite3

conn = sqlite3.connect("database.db")
cur = conn.cursor()

cur.execute("SQL-запрос в СУБД")


Также рекомендуется обновлять БД после записей в неё:
import sqlite3

conn = sqlite3.connect("database.db")
cur = conn.cursor()

cur.execute("SQL-запрос в СУБД")
conn.commit()


По завершении работы закрываем соединение и курсор:
import sqlite3

conn = sqlite3.connect("database.db")
cur = conn.cursor()

cur.execute("SQL-запрос в СУБД")
conn.commit()

cur.close()
conn.close()


На этом «формальности» заканчиваются, в следующих уроках уже коснёмся темы непосредственно самого SQL (structured query language).


#Обучение #SQLite
👍5
😌 Отойдём от Python: Реляционные БД

Реляционная модель базы данных - это наиболее популярный и широко используемый тип баз данных, который был разработан в 1970-х годах Эдгаром Коддом из университета Калифорнии. Основное отличие реляционной модели от других типов баз данных заключается в том, что она использует таблицы для хранения и управления данными.

В реляционной модели данные представляют собой отношения между записями (строками) в таблице и полями (столбцами), которые описывают эти отношения. Каждая таблица имеет уникальное имя, а каждое поле имеет уникальное имя и тип данных.

1. Основные понятия реляционной модели базы данных:

• Таблица - это набор записей, хранящихся в виде строк.
• Поле (столбец) - это отдельный компонент таблицы, содержит конкретную информацию о каждой записи.
• Стояние (ячейка) - это индивидуальное значение поля для конкретной записи.
• Отношение (ассоциация) - это связь между таблицами, которая устанавливается с помощью ключа.

2. Ключевые понятия реляционной модели:

• Ключ (primary key) - уникальный идентификатор для каждой записи в таблице, который отличает её от других записей.
• Внешний ключ (foreign key) - ссылка на конкретную таблицу, которая связывает две таблицы.
• Конкатенация (join) - операция, которая объединяет несколько таблиц по общему полю.

3. Реляционные базы данных также используют понятия:

• VIEW (представление) - виртуальная таблица, которая генерирует результат из запросов к основным таблицам.
• INDEX (индекс) - структура данных, которая ускоряет доступ к определенным полевым значениям.

На этом заканчивается теория реляционных баз данных (SQLite относится к ним). Далее только Structured Query Language.


#Обучение #SQLite
5👍1
📂 SQL: Создание таблиц

Советуем перечитать этот пост, если не помните систему реляционных БД.

Все данные в реляционных базах данных хранятся в виде таблиц. В одной БД нет ограничений на кол-во таблиц (в SQLite).

Давайте научимся составлять SQL-запросы, которые позволят нам создавать таблицы:

1. Т.к. мы хотим создать таблицу, давайте так и напишем:
CREATE TABLE


2. Далее мы должны указать имя таблицы и в скобках множество её столбцов:
CREATE TABLE ChannelParticipant (
participant_id,
time_joining
)

Мы создали таблицу с названием ChannelParticipant и двумя столбцами: participant_id и time_joining.


3. Сейчас наш запрос не совсем корректный, т.к. у столбов мы не указали тип данных, который они могут содержать. Давайте исправим это:
CREATE TABLE ChannelParticipant (
participant_id INTEGER,
time_joining DATETIME
)

• INTEGER - тип данных для хранения целых чисел
• DATETIME - тип данных для хранения даты и времени
Теперь всё будет работать корректно.

Также обращаем внимание, что для SQL регистр не важен (за исключением названий баз данных, таблиц и столбцов в них). Но принято ключевые слова SQL писать в верхнем регистре.

Также не забывайте, что всё происходит в рамках Python. Саму базу данных мы научились создавать здесь.


#Обучение #SQLite
🔥4