Из Википедии, свободной энциклопедии
Перейти к навигацииПерейти к поиску

Бизнес - система 12 , или просто BS12 , был один из первых полностью реляционных систем управления базами данных , разработанных и реализованных IBM «s Бюро обслуживания дочерней компании в международном центре развития компании в Uithoorn , Нидерланды . Программирование началось в 1978 году, а первая версия была выпущена в 1982 году. Она никогда не использовалась широко и практически исчезла вскоре после закрытия подразделения в 1985 году, возможно, потому, что IBM и другие компании остановились на SQL в качестве стандарта.

Неизменным вкладом BS12 в историю стало использование нового языка запросов на основе ISBL , созданного в британском научном центре IBM . С разработчиками знаменитой System R, находившейся в то же время в США, также консультировались по определенным вопросам, касающимся движка, но команда BS12 однозначно отвергла SQL , будучи убеждена, что этот явно ненадежный и сложный в использовании язык (который в то время был также относительно неполным) никогда не завоевал популярность.

BS12 включает ряд интересных функций, которые еще не появились в большинстве систем на базе SQL, некоторые из которых являются следствием прецедента ISBL, другие - преднамеренным дизайном. Например, представление может быть параметризовано, а параметры могут иметь тип TABLE. Таким образом, представление может фактически быть новым оператором отношения, определенным в терминах существующих операторов. Оператор Codd 's DIVIDE был фактически реализован таким образом.

Другой функцией, которую можно было бы легко включить в системы SQL, была поддержка операций обновления таблиц каталога (системные таблицы, описывающие структуру базы данных, как в SQL). Новую таблицу можно создать, вставив строку в TABLESкаталог, а затем добавив в нее столбцы путем вставки в COLUMNS.

Кроме того, BS12 опередил SQL в поддержке определяемых пользователем функций и процедур, используя полный вычислительный подъязык, триггеры и простой интерфейс «вызова» для использования прикладными программами, и все это в своем самом первом выпуске в 1982 году.

Пример

Пример запроса для определения того, какие отделы превышают бюджет заработной платы: [1]

 T1 = СВОДКА (EMP, ГРУППА (DEPTNUM), EMPS = COUNT, SALSUM = SUM (SALARY)) T2 = ПРИСОЕДИНИТЬСЯ (T1; ОТДЕЛЕНИЕ) T3 = ВЫБРАТЬ (T2; ОСНОВНАЯ СУММА> БЮДЖЕТ)

Обратите внимание на «естественное соединение» в общем столбце DEPTNUM . Хотя некоторые диалекты SQL поддерживают естественные соединения, для ознакомления в примере будет показано только «традиционное» соединение. Вот эквивалентный SQL для сравнения:

 - (Версия SQL)  ВЫБРАТЬ  d . Столбец DEPTNUM ,  Count ( * ) ,  как  EMPS ,  Сумма ( е . Заработная плата ) в  качестве  Salsum ,  бюджет  ОТ  Emp  в  электронных  РЕГИСТРИРУЙТЕСЬ  Dept ,  как  д  ВКЛ  е . Deptnum  =  d . Deptnum  GROUP  BY  d . Столбец DEPTNUM ,  бюджет  HAVING  Sum ( е . З ) >  Бюджет

См. Также

Ссылки

Внешние ссылки