Цитаты из книги “SQL и реляционная теория” К. Дейта
- SQL – стандартный язык для всех реляционных баз данных, но сам по себе этот факт не делает его реляционным. Как это ни печально, SQL слишком часто отходит от принципов реляционной теории
-
Всякий, кто полагается на практику, не зная теории, подобен кормчему, вступающему на судно без руля и компаса, – он не знает, куда плывет. Практика всегда должна опираться на твердые теоретические основания. Леонардо да Винчи
- Приобретя некоторый практический опыт, вы начинаете осознавать, что без знания теории не обойтись. Стефан Фарульт
- Профессионалы в любой области должны знать лежащие в ее основе фундаментальные идеи.
- Универсальное правило: можете делать все, что хотите, если только знаете, что делаете.
-
Бытует широко распространенное заблуждение, будто реляционная модель – вещь абсолютно неизменная. Это не так. В этом отношении она напоминает математику: математика тоже не статична, а изменяется со временем. Да ведь и сама реляционная модель – это тоже отрасль математики и как таковая эволюционирует по мере доказательства новых теорем и получения новых результатов. Более того, новый вклад может быть внесен любым компетентным специалистом. И, подобно математике, реляционная модель, хотя и была первоначально изобретена одним человеком, ныне стала плодом совместных усилий и принадлежит всему человечеству.
-
Но в оригинальную реляционную модель включены также два обобщенных ограничения целостности – обобщенных в том смысле, что они применимы к любой базе данных (если говорить неформально). Одно касается первичных ключей, другое – внешних. Правило целостности сущностей: атрибуты, входящие в состав первичного ключа, не могут принимать null-значений. Правило ссылочной целостности: не должно быть внешних ключей, не имеющих соответствия.
-
Прежде всего (и вопреки чрезвычайно распространенному заблуждению), все связанное с производительностью принципиально является деталью реализации, а не модели. Например, мы часто слышим, что «соединение – медленная операция». Но такое замечание лишено всякого смысла! Соединение – это часть модели, а модель как таковая не может быть ни медленной, ни быстрой; такими качествами может обладать только реализация. Поэтому допустимо сказать, что в некотором продукте X конкретная операция соединения реализована быстрее или медленнее, чем в продукте Y, – но это и все.
смотрите еще Цитаты из “Совершенный код” С. Макконнелла