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

       

аналогичны средствам удаления, за


Средства модификации SEQUEL 2 аналогичны средствам удаления, за исключением того, что для указания модификаций, которые должны быть сделаны в выбранных кортежах, используется дополнительный раздел SET. Новые значения для модифицированных атрибутов могут быть заданы как константы, как вложенные запросы или как выражения, основанные на исходных значениях атрибутов, как показано в примере М5. Как и в случае удаления, в разделе UPDATE можно поместить метку и использовать ее во вложенных запросах разделов SET или WHERE.

М5. Модифицировать таблицу EMP, повысив на 10 процентов зарплату всем тем служащим, номер которых содержится в таблице CANDIDATES.

UPDATE EMP SET SAL = SAL*1.1 WHERE EMPNO IN SELECT EMPNO FROM CANDIDATES

Не проверяются, являются ли вновь вставленные или модифицированные кортежи дубликатами уже существующих кортежей, так как в SEQUEL допускается существование кортежей-дубликатов, если пользователь не указал иначе. В версии System R языка SEQUEL кортежи-дубликаты могут быть запрещены с помощью "уникального образа" ("unique image") (объясняется в следующем разделе).

Оператор присваивания создает новое отношение в базе данных и копирует в него результат запроса. Это новое отношение может затем запрашиваться, модифицироваться и обрабатываться точно также, как любое другое отношение. В операторе присваивания специфицируются имя нового отношения и имена столбцов. Если имена столбцов нового отношения одназначно определяются разделом SELECT запроса, они могут быть опущены. Присваивание иллюстрируется примером М6.

М6. Создать новое отношение MANAGERS (с соответствующими именами столбцов) и разместить в нем номер служащего, имя, номер отдела и зарплату всех служащих, которые являются руководителями.

ASSIGN TO MANAGERS (EMPNO,NAME,DEPT,SALARY): SELECT EMPNO,NAME,DNO,SAL FROM EMP WHERE EMPNO IN SELECT MGR FROM EMP

Новое отношение, созданное оператором присваивания, не зависит от отношения(-ий), из которого(ых) оно выведено. После выполнения М6 добавление нового руководителя в таблицу EMP не влияет на отношение MANAGERS, а модификация MANAGERS не влияет на EMP.


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