16974

Внесення змін в базу даних

Практическая работа

Информатика, кибернетика и программирование

Практична робота №16 Тема: Внесення змін в базу даних. Мета: Навчитися вносити зміни в базу даних використовуючи команди INSERT UPDATE DELETE. Обладнання: персональний комп'ютер з встановленою операційною системою Windows система управління базами даних Access або Ms SQL Server. ...

Украинкский

2013-06-28

52.5 KB

2 чел.

Практична робота №16

Тема: Внесення змін в базу даних.

Мета: Навчитися вносити зміни в базу даних, використовуючи команди INSERT, UPDATE, DELETE.

Обладнання: персональний комп'ютер з встановленою операційною системою Windows система управління базами даних Access або Ms SQL Server.

  1.  Правила ТБ.
  2.  Методичні  рекомендації.

   Підзапити в операторі INSERT

Підзапити можуть використовуватися і з операторами мови маніпуляцій даними (DML). Першим з таких операторів ми розглянемо оператора INSERT. Оператор INSERT використовує дані, що повертаються підзапитом, для приміщення їх в іншу таблицю. Вибрані в підзапиті дані можна модифікувати за допомогою символьних або числових функцій, а також функцій дат і часу.

Базовий синтаксис відповідного оператора повинен бути наступним.

INSERT INTO имя_таблицы [ (столбец1 [, столбец2 ]) ]

SELECT [ *| столбец1 [, столбец2 ]]

FROM таблица1 [, таблица2 ]

[ WHERE значення ОПЕРАЦІЯ значення ]

Приклад використовування оператора INSERT з підзапитом.

INSERT INTO RICH_EMPLOYEES 

SELECT E.EMP_ID, E.LAST_NAME, E.FIRST_NAME EP.PAY_RATE 

FROM EMPLOYEE_TBL E, EMPLOYEE_PAY_TBL EP 

WHERE E.EMP_ID = EP.EMP_ID AND EP.PAY_RATE > (SELECT PAY_RATE 

     FROM EMPLOYEE_PAY_TBL 

WHERE E.EMP_ID = '220984332'); 

2 рядки створені. 

Цей оператор INSERT вставляє значення EMP_ID, LAST_NAME, FIRST_NAME і PAY_RATE в таблицю RICH_EMPLOYEES для всіх службовців, норма оплати праці яких перевищує норму оплати праці службовця з табельним номером 220984332.

   Підзапити в операторі UPDATE

Підзапити можна використовувати в операторі UPDATE. За допомогою оператора UPDATE з підзапитом можна обновляти дані як одного, так і декількох стовпців відразу.

Базовий синтаксис оператора наступний.

UPDATE таблиця 

SET имя_столбца [, имя_столбца ] = 

(SELECT имя_столбца [,имя_столбца ]

FROM таблиця

[ WHERE] )

Розглянемо приклади, що роз'яснюють використовування оператора UPDATE з підзапитом. Спочатку розглянемо запит, що повертає табельні номери службовців з Індіанаполіса.

SELECT EMP_ID 

FROM EMPLOYEE_TBL 

WHERE CITY = 'INDIANAPOLIS'; 

Цей запит буде використаний як підзапит в наступному операторі UPDATE. Ось цей оператор UPDATE з підзапитом.

UPDATE EMPLOYEE_PAY_TBL 

SET PAY_RATE = PAY_RATE * 1.1 

WHERE EMP_ID IN (SELECT EMP_ID 

                FROM EMPLOYEE_TBL 

                WHERE CITY = 'INDIANAPOLIS'); 

4 рядки оновлені. 

Тут слід звернути увагу на те, що підзапит повертає декілька рядків даних. З огляду на те, що очікується одержати від підзапиту декілька рядків, використовується ключове слово IN, що дозволяє порівняти дане значення із списком значень. При використовуванні для порівняння знаку рівності було б повернене повідомлення про помилку.

    Підзапити в операторі DELETE

Підзапити можна використовувати в операторі DELETE. Базовий синтаксис оператора наступний.

DELETE FROM имя_таблицы   

[ WHERE ОПЕРАЦІЯ [значення ]   

(SELECT имя_столбца   

FROM имя_таблицы   

[WHERE]) 

У наступному прикладі з таблиці EMPLOYEE_PAY_TBL віддаляється запис з інформацією про службовця на ім'я BRANDON GLASS. Табельний номер цього службовця не відомий, але можна створити підзапит, який знайде цей номер в таблиці EMPLOYEE_TBL по значеннях стовпців з іменами (FIRST_NAME) і прізвищами (LAST_NAME) службовців.

DELETE FROM EMPLOYEE_PAY_TBL

WHERE EMP_ID = (SELECT EMP_ID

                     FROM EMPLOYEE_PAY_TBL

                     WHERE LAST_NAME = 'GLASS' AND FIRST_NAME = 'BRAHDON'); 

1 рядок оновлено.

Не забувайте використовувати в операторах UPDATE і DELETE ключове слово WHERE. Якщо останнє не використовувати, будуть оновлені або видалені дані всіх стовпців.

  1.  Індивідуальне завдання

Складіть  запити, використовуючи таблиці PREDMET, STUDENTS, TEACHERS, USP

  1.  Вставте інформацію про середній бал кожного студента, інформацію вивести у вигляді нової таблиці.
  2.  Видаліть інформацію про викладачів,  в прізвищі яких є буква «а».  

DELETE FROM TEACHERS

WHERE TFAM LIKE  "*а*";

TEACHERS

TNUM

TFAM

TIMA

TOTCH

TDATE

4002

Петров

Олег

Володимирович

01.09.1997

4003

Сидоров

Віталій

Володимирович

01.09.1988

4004

Петренко

Любов

Олексіївна

01.09.1988

  1.  Видаліть інформацію про предмети, які вивчаються на першому курсі.

DELETE FROM PREDMET

WHERE COURS =1;

PREDMET

PNUM

PNAME

TNUM

HOURS

COURS

2004

Філософія

4005

17

2

2005

Економіка

4004

17

3

  1.  Видаліть інформацію про студентів, які одержали оцінку 5 по будь-якому предмету.

  1.  Змініть стипендію студенту на 185 з кодом 3415.
  2.  Призначте  стипендію  25 грн. студентам які не одержують  стипендію.
  3.  Збільште розмір стипендії на 50% студентам, у яких є оцінки не менше, ніж по двох предметах.

  1.  Контрольні запитання

  1.  Які оператори відносять до мови маніпуляцій даними (DML)?
  2.  Що таке підзапити?
  3.  Пояснити різницю між діями операторів INSERT та UPDATE?
  4.  Використання функції DELETE в під запитах та без підзапитів ? 

  1.  Оформлення звіту.
  2.  Захист роботи.


 

А также другие работы, которые могут Вас заинтересовать

27213. Предложите варианты формулировки темы урока 21.5 KB
  Либо формулирование идет в виде проблемного вопроса В виде изречения В виде шарады В зависимости от типа урока.
27214. Продемонстрируйте различные способы целеполагания на уроке истории 24.5 KB
  от учителя: общая цель и задачи триединство целей 2. Образовательная цель: Сформировать целостное представление об Афинах после греко персидских воин; продолжить формирование умений работы в группах; Развивающая цель: Продолжить формировать умение составлять рассказ выделять главное высказывать свою точку зрения; Воспитательная цель: Способствовать развитию у школьников интереса к истории приобщать их к культурному наследию прошлого. Цель урока: сформировать представление учащихся о городе Афины как центре греческой культуры показать...
27216. Покажите использование игровых технологий на уроке истории 25 KB
  Покажите использование игровых технологий на уроке истории ИГРА вид деятельности детей заключающийся в воспроизведении действий взрослых и отношений между ними и направленный на ориентировку и познание предметной и социальной действительности. ПОЧЕМУ ВАЖНА ВИДЫ Виды деловых игр: В зависимости от типа человеческой деятельности: Учебный Исследовательский Аттестационный Управленческий Ежова Без ограниченный Ограниченный В реальном времени Время смято По оценке деятельности Бальная Как работал По конечному результату Жесткие игры...
27217. Продумайте приемы проверки и оценки знаний и умений учащихся 24 KB
  Но в настоящее время появилась новая система отслеживания всего комплекса образованности учащегося. Это система педагогического мониторинга.
27218. Покажите приемы реализации внутри и межпредметных связей 25.5 KB
  покажите приемы реализации внутри и межпредметных связей ВНУТРИПРЕДМЕТНЫЕ СВЯЗИ зависимость между конкретными частями отдельной науки МЕЖПРЕДМЕТНЫЕ СВЯЗИ это объективно существующие связи между информацией из разных областей науки и практики входящей в содержание обучения. Отражение в сознании учащихся этих связей делает знание более прочным структурируемым гибким. В методической литературе перечислены основные приемы реализации межпредметных связей : напоминание учителем ранее изученных фактов понятий и идей постановка вопросов и...