Форум сайта python.su
0
Есть ли какая-то книга, которая заточена именно на взаимодействие Python с базами данных ?
Желательно чтобы в ней были задачи по теме.
заранее Спасибо !
Офлайн
221
Если такая книга существует, то она странная. Баз данных много, они могут быть очень разными, и работать с ними надо очень по разному. Каждая из баз данных развивается своими темпами, а значит эта книга устаревает во столько раз быстрее сколько баз данных в ней описано. Условно конечно. Тем не менее, зачем нужна такая книга, если существуют материалы по каждой в отдельности. Не говоря уже что самое актуальное описание находится в документации к конкретной базе данных.
Я думаю вам нужна не она. Я какие то простые учебные материалы по конкретной базе. Несмотря на огромное многообразие информации и источников, я не подскажу какого либо конкретного.
Офлайн
253
Поскольку непонятно с какой базой человек хочет работать делаем вывод что ему годится любая.
Тогда логично осваивать встроенную.
https://docs.python.org/3/library/sqlite3.html
https://www.tutorialspoint.com/sqlite/pdf/sqlite_python.pdf
Офлайн
857
Можно с MySQL начать изучение баз данных (эта СУБД полная и несложная).
https://dev.mysql.com/doc/
А питон с базами данных не работает, он только даёт интерфейс для работы с уже существующими СУБД (системами управления базами данных). То есть для работы с базами данных через питон надо знать сами системы управления базами данных, так как через питон ты просто ими управляешь.
Даже если дойдёшь до проектирования базы данных, тебе всё равно понадобится СУБД, в которой ты потом будешь создавать свою базу данных. И хорошо, если она будет полной по операциям (чего не скажешь об SQLite).
Отредактировано py.user.next (Авг. 29, 2018 06:59:22)
Офлайн
0
извиняюсь, не уточнил БД. Меня интересует MYSQL
Офлайн
13
py.user.next
Можно с MySQL начать изучение баз данных (эта СУБД полная и несложная)
# Life loop while alive: if (fun > boredom) and money: pass_day(fun, boredom, money) continue else: break
Офлайн
857
DamMerculС SQLite он получит некачественные знания по СУБД. В SQLite нет многих вещей и он просто не узнает об их существовании. Например, хранимые процедуры. В MySQL их вообще легко делать, в SQLite надо писать расширение на C.
Уж лучше sqlite, он же новичок
Офлайн
13
py.user.nextНо sqlite тем и популярен, что прост и в нем нет дофига функций. Он дает тебе возможность создать самую простую БД и не париться
# Life loop while alive: if (fun > boredom) and money: pass_day(fun, boredom, money) continue else: break
Офлайн
857
DamMerculMySQL тоже простая СУБД, при этом на ней очень удобно учиться и изучать всё полноценно. Для SQLite даже клиента нормального нет, чтобы читать базы данных. В MySQL ты можешь прочитать записи через \G в любой момент (это функция клиента, не СУБД), тогда как в SQLite есть режим построчного вывода, который работает только для всех таблиц сразу, и в котором ты должен каждый раз переключаться, чтобы остальные таблицы не затрагивать этим режимом. В SQLite всё допотопно, учиться на ней неудобно. Ничего не будешь знать просто после SQLite, потому что каждое действие нужно будет изучать на несколько часов больше, чем в MySQL. В результате плотность изученного материала будет слишком низкой.
Он дает тебе возможность создать самую простую БД и не париться
MariaDB [test]> select * from messages;
+------+---------+
| id | message |
+------+---------+
| 1 | abc |
| 2 | def |
+------+---------+
2 rows in set (0.00 sec)
MariaDB [test]>
MariaDB [test]> select * from messages\G
*************************** 1. row ***************************
id: 1
message: abc
*************************** 2. row ***************************
id: 2
message: def
2 rows in set (0.00 sec)
MariaDB [test]>

Отредактировано py.user.next (Авг. 30, 2018 00:44:35)
Офлайн
186
> Есть ли какая-то книга, которая заточена именно на взаимодействие Python с базами данных ?
Может тебе что то типа алхимии нужно?
Офлайн