Читаю книжку "sql для самых-самых тупых". И всё равно ничего не понимаю. Оъясните мне глубинную концепцию СУБД на пальцах. Не могу я её осознать. Заботать теорию надёжности за вечер - могу, апач поднять - могу, даже торт испечь могу, хоть и паршивый. А вот в чём скрытый смысл баз данных, понять не могу.
2. СУБД должна обеспечивать работу БД, а именно безопасность, корректность работы и целостность данных. Проблемы с целостностью данных самые простые в плане описания. Допустим, ушёл из банка клиент. Его удалили из БД и теперь программа падает каждый раз, когда кто-то из имевших с ним дело смотрит историю - его имени нет, а программа его запрашивает и не может вывести. Для решения подобных проблем, например, можно использовать триггеры - программы, которые самостоятельно выполняются при некоторых действиях, таких как добавление или удаление строчки. Можно, например, при удалении клиента во всех строчках упоминаемых его, заменить его на "неизвестного отправителя", можно, просто выпилить из базы все строчки. Корректность - это отдельная головная боль. С ней столько разных проблем, что все в комменте описывать лень :) Например, переводят тебе деньги на счёт сразу два человека в одну секунду - первый 1$, второй 1000$. Сначала оба посмотрели, что у тебя на счету 0$, потом второй сказал, "замени 0$ на 1000$", а после этого первый сказал "
( ... )
Книжки для умных я пробовала читать, но там возникает проблема "слова все знакомые, а смысл неясен". А вот в книжке для тупых я вчера почитала про транзакции и вроде даже поняла, зачем они нужны и как устроены.
В целом спасибо, еще пара моментов из твоего комментария мне стали ясны :)
О, да. Микрософт такой микрософт. Книжки у них обычно хорошие в плане документации, но не в плане понятности. Они дают материал, но при этом не учат. Правда, людям, которые уже стали близки к програмизму обычно с головой хватает такого подхода, а на них эти книжки в общем-то и ориентированы.
Это правда. Микрософт - жуткие бюрократы и хотят, чтобы люди помнили всякую ерунду. Осмысленность этих бумажек отдельный вопрос, но без них компании трудно определить понимает ли человек что-то и насколько.
Это верно. Но начинать изучение новой предметной сферы надо не с них. Я вот тоже начинаю с "книжек для тупых" всегда - они дают очень поверхностные, но обширные знания (как чгкшка ;) ). Вот когда общии концепции понятны, тогда можно вгрызаться в детали и зубрить синтаксис (если цель сдать какую-нибудь сертификацию).
Reply
В целом спасибо, еще пара моментов из твоего комментария мне стали ясны :)
Reply
Пожалуйста, если что - спрашивай :)
Reply
Reply
Reply
Reply
Reply
Вот когда общии концепции понятны, тогда можно вгрызаться в детали и зубрить синтаксис (если цель сдать какую-нибудь сертификацию).
Reply
Leave a comment