Введение

Business System 12, или просто BS12, была одной из первых полностью реляционных систем управления базами данных, разработанной и реализованной дочерней компанией IBM Bureau Service в международном центре разработки компании в Уитхорне, Нидерланды. Программирование началось в 1978 году, а первая версия была выпущена в 1982 году. Она не получила широкого распространения и фактически исчезла вскоре после закрытия подразделения в 1985 году, вероятно, потому что IBM и другие компании остановились на SQL как на стандарте. Значительным вкладом BS12 в историю стало использование нового языка запросов, основанного на ISBL, разработанного в Научном центре IBM в Великобритании. Разработчики знаменитой System R, работы над которой велись в США одновременно, также консультировались по некоторым вопросам, касающимся механизма, но команда BS12 решительно отвергла SQL, будучи убеждена, что этот, казалось бы, несовершенный и сложный в использовании язык (который в то время также был реляционно неполным) никогда не станет популярным. BS12 включала ряд интересных функций, которые до сих пор отсутствуют в большинстве систем на основе SQL, некоторые из которых являются следствием следования принципам ISBL, другие – результатом сознательного проектирования. Например, представление (view) могло быть параметризовано, а параметры могли быть типа TABLE. Таким образом, представление фактически могло быть новым реляционным оператором, определенным на основе существующих операторов. Оператор DIVIDE Кодда был реализован именно таким образом. Еще одной функцией, которую легко можно было бы включить в системы SQL, была поддержка операций обновления в каталожных таблицах (системных таблицах, описывающих структуру базы данных, как в SQL). Новую таблицу можно было создать, вставив строку в каталог TABLES, а затем добавить к ней столбцы, вставив данные в COLUMNS. Кроме того, BS12 опередила SQL в поддержке пользовательских функций и процедур, используя полнофункциональный подязык Тьюринга, триггеры и простой интерфейс "вызова" для использования в прикладных программах, и все это – уже в самом первом выпуске в 1982 году.