PyMySQL: подключение и управление
| Метод / функция | Описание | Пример |
|---|---|---|
pymysql.connect(...) | Создаёт соединение с MySQL | conn = pymysql.connect(host="localhost", user="root", password="secret", database="shop") |
connection.cursor() | Создаёт курсор | cursor = conn.cursor() |
connection.commit() | Сохраняет изменения в базе | conn.commit() |
connection.rollback() | Откатывает текущую транзакцию | conn.rollback() |
connection.close() | Закрывает соединение | conn.close() |
cursor.execute(sql, params) | Выполняет один SQL-запрос | cursor.execute("SELECT * FROM users WHERE id = %s", (1,)) |
cursor.executemany(sql, seq) | Выполняет запрос несколько раз | cursor.executemany("INSERT INTO t VALUES (%s, %s)", [(1, 2), (3, 4)]) |
cursor.fetchone() | Возвращает одну строку или None | row = cursor.fetchone() |
cursor.fetchall() | Возвращает список всех оставшихся строк | rows = cursor.fetchall() |
cursor.fetchmany(n) | Возвращает до n строк | rows = cursor.fetchmany(5) |
cursor.close() | Закрывает курсор | cursor.close() |
PyMongo: коллекции и документы
| Метод / функция | Описание | Пример |
|---|---|---|
MongoClient(uri) | Подключается к MongoDB | client = MongoClient("mongodb://localhost:27017") |
client[database_name] | Возвращает объект базы данных | db = client["ich_edit"] |
db[collection_name] | Возвращает объект коллекции | col = db["products_pd_ivanov"] |
collection.delete_many(filter) | Удаляет все документы, попадающие под фильтр | col.delete_many({}) |
collection.insert_one(doc) | Вставляет один документ | col.insert_one({"name": "Pen", "price": 1.5}) |
collection.insert_many(docs) | Вставляет список документов | col.insert_many([{...}, {...}]) |
result.inserted_ids | Список ID вставленных документов | print(result.inserted_ids) |
collection.update_many(filter, update) | Обновляет все документы по фильтру | col.update_many({}, {"$mul": {"price": 1.2}}) |
result.modified_count | Количество изменённых документов | print(result.modified_count) |
collection.find(filter) | Возвращает курсор с найденными документами | for doc in col.find(): print(doc) |
client.close() | Закрывает соединение с MongoDB | client.close() |
Порядок работы с базой данных
MySQL
- Импортировать
pymysql. - Создать соединение:
connection = pymysql.connect(...). - Создать курсор:
cursor = connection.cursor(). - Выполнить запрос:
cursor.execute(...). - При необходимости получить данные:
fetchone(),fetchall(). - Если запрос изменяет данные:
connection.commit(). - Закрыть курсор:
cursor.close(). - Закрыть соединение:
connection.close().
MongoDB
- Импортировать
MongoClientизpymongo. - Создать клиент:
client = MongoClient(...). - Выбрать базу:
db = client["ich_edit"]. - Выбрать коллекцию:
collection = db["products_..."]. - Выполнить операции:
delete_many({}),insert_many(...),update_many(...),find(...). - Закрыть клиент:
client.close().