Бен, ну ты понял.

Jun 27, 2012 12:41

Читаю книжку "sql для самых-самых тупых". И всё равно ничего не понимаю.
Оъясните мне глубинную концепцию СУБД на пальцах. Не могу я её осознать. Заботать теорию надёжности за вечер - могу, апач поднять - могу, даже торт испечь могу, хоть и паршивый.
А вот в чём скрытый смысл баз данных, понять не могу.

казалось бы при чем здесь Цвингли?, лемминги, спасите вымирающих варастийских хомячков

Leave a comment

rubtsov June 27 2012, 20:05:10 UTC
2. СУБД должна обеспечивать работу БД, а именно безопасность, корректность работы и целостность данных. Проблемы с целостностью данных самые простые в плане описания. Допустим, ушёл из банка клиент. Его удалили из БД и теперь программа падает каждый раз, когда кто-то из имевших с ним дело смотрит историю - его имени нет, а программа его запрашивает и не может вывести. Для решения подобных проблем, например, можно использовать триггеры - программы, которые самостоятельно выполняются при некоторых действиях, таких как добавление или удаление строчки. Можно, например, при удалении клиента во всех строчках упоминаемых его, заменить его на "неизвестного отправителя", можно, просто выпилить из базы все строчки. Корректность - это отдельная головная боль. С ней столько разных проблем, что все в комменте описывать лень :) Например, переводят тебе деньги на счёт сразу два человека в одну секунду - первый 1$, второй 1000$. Сначала оба посмотрели, что у тебя на счету 0$, потом второй сказал, "замени 0$ на 1000$", а после этого первый сказал " ( ... )

Reply

elennie_morien June 28 2012, 06:24:20 UTC
Книжки для умных я пробовала читать, но там возникает проблема "слова все знакомые, а смысл неясен". А вот в книжке для тупых я вчера почитала про транзакции и вроде даже поняла, зачем они нужны и как устроены.

В целом спасибо, еще пара моментов из твоего комментария мне стали ясны :)

Reply

rubtsov June 28 2012, 07:01:00 UTC
Значит ты читала не книжку для умных, а книжку для прогеров-задротов. Найти годную книжку - это отдельная проблема.

Пожалуйста, если что - спрашивай :)

Reply

elennie_morien June 28 2012, 07:05:08 UTC
Я читала мелкомягкий курс самоподготовки к сдаче 70-433 по sql 2008 :)

Reply

rubtsov June 28 2012, 07:11:03 UTC
О, да. Микрософт такой микрософт. Книжки у них обычно хорошие в плане документации, но не в плане понятности. Они дают материал, но при этом не учат. Правда, людям, которые уже стали близки к програмизму обычно с головой хватает такого подхода, а на них эти книжки в общем-то и ориентированы.

Reply

elennie_morien June 28 2012, 07:13:01 UTC
Ну, есть обоснованное мнение, что заветную бумажку без мелкомягких книжек/тестов получить крайне сложно :(

Reply

rubtsov June 28 2012, 07:23:59 UTC
Это правда. Микрософт - жуткие бюрократы и хотят, чтобы люди помнили всякую ерунду. Осмысленность этих бумажек отдельный вопрос, но без них компании трудно определить понимает ли человек что-то и насколько.

Reply

binary_dima June 29 2012, 08:37:31 UTC
Это верно. Но начинать изучение новой предметной сферы надо не с них. Я вот тоже начинаю с "книжек для тупых" всегда - они дают очень поверхностные, но обширные знания (как чгкшка ;) ).
Вот когда общии концепции понятны, тогда можно вгрызаться в детали и зубрить синтаксис (если цель сдать какую-нибудь сертификацию).

Reply


Leave a comment

Up