Классика баз данных - статьи

       

языком непосредственно, но очень сильно


последовательность транзакций, в пределах которой сохраняются

временные отношения), подключение к БД, динамический SQL. Наконец

стандартизованы отношения-каталоги БД, что вообще-то не связано с

языком непосредственно, но очень сильно влияет на реализацию.

Заметим, что в стандарте представлены три уровня языка - базовый,

промежуточный и полный. В течение нескольких лет после принятия

стандарта производители СУБД, утверждавшие совместимость своих

продуктов со стандартом, на самом деле в лучшем случае

поддерживали промежуточный уровень языка SQL-92 (естественно, с

собственными расширениями). Только в последних выпусках СУБД

ведущих производителей обеспечивается совместимость с полным

вариантом языка.

Наконец, одновременно с завершением работ по определению

стандарта SQL-92 была начата разработка стандарта SQL3. Общей

точкой зрения ведущих производителей СУБД является то, что

будущие продукты, обладая более развитыми возможностями, должны

быть совместимы с предыдущими выпусками. Хотя многие разработчики

и пользователи реляционных СУБД осознают наличие многих

неустранимых недостатков языка SQL, от него теперь уже невозможно

отказаться (как невозможно отказаться от использования языка Си в

процедурном программировании). Следовательно, нужен новый

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

возможности как определяемые пользователями типы данных, более

развитые средства определения таблиц, наличие полного механизма

триггеров и т.д. Нужен именно стандарт, а не наличие развитых

частных версий языка, поскольку это выгодно и производителям и

пользователям СУБД. Почему же так затянулась его разработка?

Мне кажется, здесь сказываются несколько факторов. Во-первых,

объектные расширения языка выходят за пределы реляционной модели

данных, т.е. они лишаются классической теоретической базы.

Во-вторых, уже стандарт SQL-92 был очень объемным, а чем больше

язык, тем сложнее его развивать (вспомните, как долго готовился

стандарт языка Ада).Наконец, маркетинговая политика

компаний-производителей СУБД (как и других компаний) состоит в

том, чтобы убедить потенциальных покупателей в наличии уникальных

возможностей своего продукта. Поэтому они не могут ждать принятия

нового стандарта и вынуждены использовать частные расширения

языка. В целом ситуация несколько парадоксальна: появление нового

стандарта в основном зависит от специалистов ведущих компаний,

которые являются членами комитета SQL3, а текущая деятельность

компаний затрудняет работу этого комитета.

Тем не менее, я верю, что стандарт SQL3 рано или поздно появится

и будет реализован во всех развитых СУБД. Это выгодно всем.


Содержание  Назад  Вперед