Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Вставка
Вставка в таблицу базы данных осуществляется с помощью запросов такого типа:
INSERT INTO ТАТЛИЦА (ПОЛЕ_1,ПОЛЕ_2,…,ПОЛЕ_N)
VALUES (ЗНАЧЕНИЕ_1, ЗНАЧЕНИЕ_2,…, ЗНАЧЕНИЕ_N)
В скобках после имени таблицы перечисляются поля, в которые нужно вставить данные, а в скобках после предложения VALUES – значения, которые нужно вставить в соответствующие поля таблицы, перечисленные выше. Вставка осуществляется таким образом, что первое из перечисленных значений встает в поле, перечисленное в списке полей первым, второе во второе и т.д. Из всего казанного можно сделать вывод о том, что значения, перечисленные в предложении VALUES должны быть совместимы с полями таблицы, в которую осуществляется вставка.
Например, добавим в таблицу покупателей новую запись. Для этого напишем запрос следующего вида:
INSERT INTO Buyer (BNum, BName, BTown)
VALUES (6, "Маркет", 4)
В результате мы добавили покупателя с номером – 6, наименованием – Маркет, с номером города – 4.
Нередко вместо предложения VALUES используют запрос типа SELECT, результатом которого является набор значений полей, удовлетворяющих набору перечисленных полей таблицы, в которую осуществляется вставка. Предположим, что в нашей базе данных есть еще одна таблица точно такая же по структуре, что и таблица Buyer, с названием otherBuyer. Нам нужно вставить в таблицу Buyer все записи из таблицы otherBuyer. Для этого напишем запрос:
INSERT INTO Buyer (BNum, BName, BTown)
SELECT * FROM otherBuyer
Изменение данных
Структура запроса внесения изменений в записи таблицы выглядит следующим образом:
UPDATE ТАБЛИЦА
SET ПОЛЕ_1 = ЗНЕНИЕ_1
ПОЛЕ_2 = ЗНЕНИЕ_2
…
ПОЛЕ_N = ЗНЕНИЕ_N
WHERE УСЛОВИЕ
Все изменения, описанные в запросе, коснутся только тех записей, которые удовлетворяют условию, описанному в предложении WHERE. Если нужно внести изменения во всю таблицу, то предложение WHERE не описывают.
Например, увеличим цены товаров в два раза, относящихся к первой группе. Текст запроса будет таким:
UPDATE Goods
SET GPrice=GPrice*2
WHERE GTypeNum=1
В предложении WHERE можно использовать подзапросы.
Так же подзапросы можно использовать в предложении SET после имени поля и знака равенства. Результатом подзапроса должно быть одно значение поля, совместимого с полем указанным перед знаком равенства. Например, пересчитаем сумму в таблице покупок.
UPDATE Sells
SET SSum= SQnty*(Select Gprice FROM Goods)
WHERE GNum=1)
WHERE GNum=1
Опасность такого запроса заключается в том, что если результатом подзапроса буден несколько значений, то в запрос выполнен не будет. Возникнет ошибка. Поэтому при написании запроса такого типа надо быть уверенным, что результат подзапроса – это одно поле.
Удаление
Для удаления используются запросы типа Delete:
DELETE FROM ТАБЛИЦА
WHERE УСЛОВИЕ
Предложение WHERE также является дополнительным разделом. Однако без него такие запросы используются редко, так как отсутствие условия означает в удаление всех записей таблицы!
Приведем пример использования запроса типа Delete. Удалим всех покупателей из таблицы покупателей, которые относятся к городу Москва.
DELETE FROM Buyer
WHERE BTown IN (SELECT TNum FROM touns
WHERE TName = "Москва")
Дата публикования: 2015-10-09; Прочитано: 473 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!