Следует поддерживать вычислительную полноту
С точки зрения языка программирования это свойство является очевидным: оно просто означает, что любую вычислимую функцию можно выразить с помощью языка манипулирования данными системы баз данных. С точки зрения базы данных это является новшеством, так как SQL, например, не является полным языком.
Мы не призываем проектировщиков объектно-ориентированных систем баз данных к созданию новых языков программирования: вычислительной полноты можно добиться, разумным образом опираясь на существующие языки программирования. И на самом деле, в большинстве систем используются уже существующие языки программирования [Banerjee et al. 87], [Fishman et al. 87], [Atwood 85], [Bancilhon et al. 88]; обсуждение этой проблемы см. в [Bancilhon and Maier 88].
Заметим, что вычислительная полнота – это не то же самое, что ресурсная полнота (resource completeness), т.е. возможность доступа ко всем ресурсам системы (например, к экрану и удаленным ресурсам) с использованием внутренних средств языка. Поэтому система, даже будучи вычислительно полной, может быть не способна выразить полное приложение. Тем не менее, такая система является более мощной, чем система баз данных, которая только хранит и извлекает данные, а также выполняет простые вычисления с атомарными значениями.