|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Речення INSERT10.1.3.1. Вставка одного запису в таблицю
Додати в таблицю Блюда блюдо:
Шашлик (БЛ - 34, Блюдо - Шашлик, В - Г Основа - М'ясо, Вихід - 150)
при невідомій поки трудомісткості приготування цього блюда.
INSERT INTO Блюда (БЛ, Блюдо, В, Основа, Вихід) VALUES (34, 'Шашлик', 'Г', 'М’ясо', 150);
Створюється новий запис для блюда з номером 34, з невизначеним значенням в стовпці Праця.
Порядок полів в INSERT не обов'язково повинен співпадати з порядком полів, в якому вони визначалися при створенні таблиці. Цілком допустима і така версія попередньої пропозиції:
INSERT INTOБлюда (Основа, В, Блюдо, БЛ, Вихід) VALUES('М’ясо', 'Г', 'Шашлик', 34, 150);
При відомій трудомісткості приготування шашлику (наприклад, 50 коп) зведення інформації про нього можна вести за допомогою укороченого речення:
INSERT INTO Блюда VALUES (34, 'Шашлык', 'Г', 'Мясо', 150, 5); при цьому потрібно дотримуватися строгго поряду переліку значень, що вводяться, оскільки, не маючи переліку завантажуваних стовпців, СУБД може використовувати лише перелік, який визначений при створенні таблиці, що модифікується. В попередніх прикладах проводилася модифікація короеневої сутності, тобто таблиці з первинним ключем БЛ. Майже всі СУБД мають механізми для запобігання введення не унікального первинного ключа, наприклад, введення "Шашлику" під номером 34, якщо такий вже є. А як бути з асоціаціями або іншими таблицями, що містять зовнішні ключі?
Нехай, наприклад, потрібно додати в рецепт блюда Салат літній (БЛ = 1) небагато (15 г) цибулі (ПР = 10), і ми скористалися реченням
INSERT INTOСостав (БЛ, ПР, Вага) VALUES(1, 10, 15);
Подібно до операції DELETE операція INSERT може порушити несуперечність бази даних. Якщо не вжити спеціальних заходів, то СУБД не перевіряє, чи є в таблиці Блюда блюдо з первинним ключем БЛ = 1 і в таблиці Продукти - продукт з первинним ключем ПР = 10. Відсутність будь-якого з цих значень породить суперечність: в базі з'явиться посилання на неіснуючий запис.
Речення UPDATE 10.1.4.1. Оновлення одиного запису
Змінити назву блюда з кодом БЛ=5 на Борщ, збільшити його вихід на 30 г і встановити NULL-значення в стовпець Затрати.
UPDATE Блюда SET Блюдо = 'Борщ', Вихід = (Вихід+30), Затрати = NULL WHERE БЛ = 5;
Оновлення мнгожинги записів Потроїти ціну всіх продуктів таблиці поставки (крім ціни кави - ПР = 17).
UPDATE Поставки SET Ціна = Ціна * 3 WHERE ПР < > 17;
10.1.4.3. Оновлення з підзапитом
Встановити рівною нулю Ціну і К_сть продуктів для постачальників із Зіньківець і Колибаївки.
UPDATE Поставки SET Ціна = 0, К_сть = 0 WHERE ПС IN (SELECT ПС FROM Постачальники WHERE Місто IN ('Зіньківці', 'Колибаївка'));
Визначення даних Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |