Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Изменение данных при помощи SQL

Практически всюду таблица и запрос в операторах SQL не отличаются друг от друга. Для краткости будем говорить «таблица», подразумевая «таблица или запрос».

Оператор Update выполняет изменение значений в одном или нескольких столбцах в одной или нескольких записях таблицы. Следующий запрос в таблице «Договор» увеличивает стоимость в договорах, заключенных после «01.01.2010»:

UPDATE Договор SET стоимость = стоимость*1.1 WHERE дата>#01.01.2010#

Оператор Delete позволяет удалить из таблицы строки, удовлетворяющие заданному условию. Например, удаление договоров, заключенных до «01.01.2000», выглядит следующим образом:

DELETE Договор WHERE дата < #01.01.2000#

Оператор Select Into создает таблицу и добавляет в нее записи. Удобный механизм для создания некоторых временных таблиц для передачи в этом виде на другой компьютер. Применяется для переноса в таблицу, имеющую меньшее количество полей, например, при переносе данных из внутренней базы, в которой на складе хранится и приходная и отпускная цена товара, в таблицы, предназначенные для хранения на Web-сервере. Таблица для web имеет колонки – наименование товара и цена. Кроме того, оставшиеся в небольшом количестве товары мы не предлагаем в Интернет, т.к. затраты на доставку окупаются только для оптовых продаж.

SELECT Товар.Наименование, Склад.цена INTO Склад_в FROM Товар, Склад WHERE (Товар.Код=Склад.Товар) AND (Склад.Кол > 10)

Оператор Insert реализован в двух форматах: для одновременного добавления нескольких строк одновременно и для добавления одной строки. Многострочный оператор предназначен для копирования записей из одной таблицы в другую. Такие действия могут потребоваться, например, для переноса в архивную копию. В отличие от вышеприведенного примера с Select Into записи добавляются в уже существующую таблицу. Это нам подходит в случае, если у нас несколько складов, а формируем мы одну выходную таблицу.

INSERT INTO Склад_в (Товар, цена) SELECT Товар.Наименование, Склад_обуви.цена FROM Товар, Склад_обуви WHERE (Товар.Код=Склад_обуви.Товар) AND (Склад_обуви.Кол > 10)

INSERT INTO Склад_в (Товар, цена) SELECT Материал.Наименование, Склад_матер.цена FROM Материал, Склад_матер WHERE (Материал.Код=Склад_матер. Материал) AND (Склад__матер.Кол > 200)

Можно копировать данные во внешнюю базу данных, причем внешняя база может быть даже другого формата, формат указывается в разделе IN. Например, расположенную на web-сервере базу переписываем свою таблицу выполненных заказов.

INSERT INTO Вып_Заказ IN "C:\DBASE\DATA\ZAKAZ" "dBASE IV;" SELECT Заказ.N, Заказ.Отдано, Заказ.Дата_вып FROM Заказ

Можно добавлять одну запись, непосредственно в команде задавая значения полей. Чаще такое нужно при разработке клиентского приложения, в котором пользователь вводит данные с клавиатуры в некоторые поля формы, а по нажатию им кнопки «отправить» новая запись добавляется в базу данных.

INSERT INTO Накладная (Дата, Клиент) VALUES (#28.12.2010#,"ООО Орион")

<== предыдущая лекция | следующая лекция ==>
Язык запросов | Расширения Jet 4.0 ANSI-92
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 318; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.