INSERT INTO Fio (Abonent_name, Executor_name)
SELECT A.Fio, E.Fio
FROM Abonent A, Executor E, Request R
WHERE R.AccountCD = A.AccountCD AND
R.ExecutorCD = E.ExecutorCD;.
Если ранее было создано представление Abonent_Executor со столбцами abonent_name и executor_name, то предыдущий запрос можно переписать следующим образом:
INSERT INTO Fio
SELECT Abonent_name, Executor_name
FROM Abonent_Executor;.
53. Каким образом осуществляется вставка пустого значения в ячейку таблицы?
Если требуется ввести NULL-значение, например, в поле Phone (номер телефона абонента неизвестен), то оно вводится точно так же, как и обычное значение, например:
INSERT INTO Abonent
VALUES (‘50000’, 8, 1, 1, ‘ПЛИТОВ Е.Д.’, NULL);
54. Приведите пример удаления единственной записи таблицы.
Простой запрос DELETE позволяет удалить содержимое всех строк указанной таблицы или тех ее строк, которые выделяются условием поиска предложения WHERE , и имеет следующий формат:
DELETE FROM {базовая_таблица | представление}
[WHERE <условие_поиска> | WHERE CURRENT OF имя_курсора]
[RETURNING <список_столбцов> [INTO <список_переменных>]];.
Например, чтобы удалить из таблицы Abonent абонента с номером лицевого счета, равным '005488', требуется выполнить следующий запрос:
DELETE FROM Abonent
WHERE AccountCD = '005488';.
55. Приведите пример удаления множества записей.
DELETE FROM Abonent
56. Каким образом осуществляется удаление с вложенным подзапросом?
В предложении WHERE запроса DELETE можно использовать вложенные запросы, которые могут быть как простыми, так и коррелированными. Использование подзапросов в DELETE аналогично использованию таковых в SELECT.
|
|
Примеры:
· Пусть необходимо удалить сведения о ремонтных заявках абонента Мищенко Е.В. Запрос на удаление соответствующих заявок можно записать в следующем виде:
DELETE FROM Request WHERE AccountCD IN
(SELECT AccountCD FROM Abonent
WHERE Fio = ‘МИЩЕНКО Е.В.’);.
· Рассмотрим использование коррелированного подзапроса в предложении WHERE запроса DELETE, т.е. подзапроса, который содержит внешнюю ссылку на текущую строку таблицы, из которой удаляются данные. Например, для удаления всех сведений об оплате услуг газоснабжения абонентами, проживающими на улице Татарской, можно использовать следующий запрос:
DELETE FROM PaySumma P WHERE EXISTS
(SELECT * FROM Abonent A, Street S
WHERE S.StreetNM = ‘ТАТАРСКАЯ УЛИЦА’ AND A.StreetCD = S. StreetCD AND P.AccountCD = A. AccountCD);.
57. При помощи какой команды осуществляется модификация данных в MS SQL Server?
Модификация данных может выполняться с помощью команд:
DELETE (удалить),
INSERT (вставить),
UPDATE (обновить).
58. Приведите пример использования команды UPDATE с предложением FROM.
UPDATE [University].[dbo].[Fack]
SET [FackName] = 'КТАСиЗИ'
FROM [University].[dbo].[Fack], [University].[dbo].[Univeristy]
WHERE ([Univeristy].[UniveristyName] = 'КубГТУ') and ([Fack].[FackName]='КТАС')
SET указывает столбцы, которые будут изменяться, и значения, которые им присваиваются. С помощью предложения WHERE отбираются записи, которые будут обновляться. Команда UPDATE не может вставить в колонку данные «чужого» типа либо значения, которые нарушают правила ввода для столбца. В случае неудачи хотя бы с одним столбцом изменения произведены не будут.
|
|
59. Приведите пример обновления множества записей.
Пусть требуется утроить цену всех продуктов таблицы поставки (кроме цены за кофе, где код продукта (Поле ПР) - ПР = 17).
UPDATE Поставки
SET Цена = Цена * 3
WHERE ПР <> 17;
60. Приведите пример обновления записей с подзапросом.
В UPDATE можно в предложении WHERE использовать вложенные
запросы. Также допускается использование вложенного запроса в предложении SET.
Установить равной нулю цену и К_во продуктов для поставщиков из Москвы и Ростова.
UPDATE Поставки
SET Цена = 0, К_во = 0
WHERE ПС IN
SELECT ПС
FROM Поставщики
WHERE Город IN ('Москва', 'Ростов'));
61. Приведите пример обновления записей нескольких таблиц.
Пусть необходимо изменить данные о продукте с кодом 13 в двух таблицах «Состав» и «Наличие».
Например требуется изменить номер продукта ПР = 13 на ПР = 20.
UPDATE Продукты UPDATE Состав
SET ПР = 20 SET ПР = 20
WHERE ПР = 13; WHERE ПР = 13;
Дата добавления: 2018-04-04; просмотров: 206; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!