Редактирование таблицы при помощи SQL-запросов




Команда ALTER TABLE может быть использована для изменения структуры таблицы — добавления и удаления строк, установления ограничений на вводимые данные.

Задание: добавитьстолбец Цвет (Color) втаблицу Flowers:

USE purchase_flowers

ALTERTABLE Flower

ADDcolorVARCHAR(40)NOTNULL

 

Удалить созданный столбец можно командой DROP:

USE purchase_flowers

ALTERTABLE Flower

DROPCOLUMN color

 

Часто необходимо создавать ограничения на значения данных. Они бывают:

1) ограничение NOT NULL;

2) проверочное ограничение;

3) ограничение уникальности;

4) ограничение первичного ключа;

5) ограничение внешнего ключа (рассмотрено выше).

Ограничение NOT NULL

Задание: Для создания этого ограничения можно воспользоваться проверкой (CHECK):

USE purchase_flowers

ALTERTABLE Flower

ADDCONSTRAINT add_nnull CHECK(if_flowering ISNOTNULL)

 

Задание: Проверьте в таблицах БДDB_BOOKS ограничения NOT NULL в соответствии с предложенной структурой данных (см. графу «Возможность содержать NULL»). При необходимости добавьте указанное ограничение.

В общем случае синтаксис проверочного ограничения выглядит следующим образом:

ALTERTABLE<имя таблицы>

ADDCONSTRAINT<имя ограничения>CHECK(<условие проверки>)

 

Задание: Задать проверочноеограничение в столбце kinf_leaf (виды листьев) на записьтолько определенных значений:

USE purchase_flowers

ALTERTABLE Flower

ADDCONSTRAINT leaf_det CHECK(kind_leaf IN('простой','сложный'))

 

Если таблица не создана, то оператор CONSTRAINT указывается в конструкции CREATE TABLE после перечисления всех столбцов создаваемой таблицы:

CREATETABLE Flower(

code_flower INTPRIMARYKEYNOTNULL, -- кодцветка

name_flower VARCHAR(40)NOTNULL, -- названиецветка

kind_flower VARCHAR(40), -- сортцветка

mean_height INTNOTNULL, -- средняявысота

kind_leaf VARCHAR(40), -- типлиста

if_flowering BIT, -- цветущий

additional_inf VARCHAR(40), -- дополнительнаяинформация

CONSTRAINT leaf_det CHECK(kind_leaf IN('простой','сложный'))

)

 

Чтобы удалить ограничение, используйте конструкцию:

ALTERTABLE Flower DROP leaf_det

Ограничение уникальности

Ограничение уникальности гарантирует, что значения в наборе столбцов уникальны и непусты для всех строк в таблице.

Задание: задать ограничение уникальности в таблице Flower гарантирующее, что название цветка будет уникальным и непустым в рамках всей таблицы. Синтаксис:

ALTERTABLE<имя таблицы>

ADDCONSTRAINT<имя ограничения>UNIQUE(<имя столбца1>,<имя столбца2>, …)

Реализация:

ALTERTABLE Flower

ADDCONSTRAINT name_flower_unique UNIQUE(name_flower)

Задание: Задайте проверочные ограничения в таблицах БД DB_BOOKS для поля Город издательства. Данное поле должно принимать следующие значения –Москва, Санкт-Петербург.

Задание: задайтеограничение уникальности для поля Название издательства

Операторы манипулирования данными (DML)

Добавление записей в таблицу (INSERT)

Упрощенный синтаксис:

INSERTINTO<имя таблицы>(<имя столбца1>,<имя столбца2>, …)

VALUES(<значение столбца1>,<значение столбца2>, …)

 

Пример: добавить автора в таблицу Authors. Дляэтого:

INSERTINTO Authors(Code_author, name_author, Birthday)

VALUES(26,'ДжекЛондон','12.01.1876');

 

Задание: Добавьте в таблицу Цветок(Flower) несколько строк с помощью оператора INSERT для БД purchase_flowers. Проверьте, что занесенные строки действительно содержатся в таблице.

Оператор DELETE

Позволяет удалять строки целиком, а не значения отдельных полей таблицы. Синтаксис для удаления содержимого всей таблицы:

DELETEFROM<имя таблицы>

 

Обычно нужно удалить только некоторые определенные строки из таблицы. Чтобы определить какие строки будут удалены, следует использовать предложение WHERE. Синтаксис:

DELETEFROM<имя таблицы>

WHERE<критерий поиска строк>

 

Задание: Удалить созданную ранее запись:

DELETEFROM Authors

WHERE(Code_author =26);

Задание: Удалите из таблицы Цветок(Flower) несколько строк с помощью оператора DELETE для БД purchase_flowers. Проверьте получение ожидаемого результата.

Изменение значений полей (UPDATE)

Синтаксис для изменения значений определенных полей всех записей таблицы:

UPDATE<имя таблицы>

SET(<имя столбца1>,<имя столбца2>, …)=

(<новое значение столбца1>,<новое значение столбца2>, …)

 

Пример:

UPDATE Authors

SET name_author ='Толстой';

 

Обычно нужно изменить значения определенных полей некоторых записей таблицы по условию. Чтобы определить, значения полей каких записей будут изменены, следует использовать предложение WHERE.

Задание: изменить фамилию автора под кодом 23 на Гоголь.

UPDATE Authors

SET name_author ='Гоголь'

WHERE Code_author =23;

Задание: Измените в таблице несколько строк с помощью оператора UPDATEи предложения WHERE для БД purchase_flowers таблицы Цветы. Проверьте получение ожидаемого результата.

Вариант 1. БД «Учет выданных подарков несовершеннолетним детям сотрудников предприятия»

Код сотрудника Код сотрудника Код ребенка
Фамилия Имя ребенка Стоимость подарка
Имя Дата рождения Дата выдачи подарка
Отчество Код ребенка Код выдачи
Должность    
Подразделение    
Дата приема на работу    

Вариант 2. БД «Учет выполненных ремонтных работ»

Код прибора в ремонте Код прибора Код мастера
Название прибора Код мастера Фамилия мастера
Тип прибора ФИО владельца прибора Имя мастера
Дата производства Дата приема в ремонт Отчество мастера
  Вид поломки Разряд мастера
  Стоимость ремонта Дата приема на работу
  код ремонта  

Вариант 3. БД «Продажа цветов»

Код цветка Код цветка Код продавца
Название цветка Дата продажи Фамилия
Сорт цветка Цена продажи Имя
Средняя высота Код продавца Отчество
Тип листа Код продажи Разряд
Цветущий   Оклад
Дополнительные сведения   Дата приема на работу

Вариант 4. БД «Поступление лекарственных средств»

Код лекарства Код лекарства Код поставщика
Название лекарства Код поставщика Сокращенное название
Показания к применению Дата поставки Полное название
Единица измерения Цена за единицу Юридический адрес
Количество в упаковке Количество Телефон
Название производителя Код поступления ФИО руководителя

Вариант 5. БД «Списание оборудования»

Код оборудования Код оборудования Код сотрудника
Название оборудования Причина списания Фамилия
Тип оборудования Дата списания Имя
Дата поступления Код сотрудника Отчество
ФИО ответственного Код списания Должность
Место установки   Подразделение
    Дата приема на работу

 

Вариант 6. БД «Поваренная книга»

Код блюда Код блюда Код продукта
Тип блюда Код продукта Название продукта
Вес блюда Объем продукта Ед измерения
Порядок приготовления    
Количество калорий    
Количество углеводов    

Вариант 7. БД «Регистрация входящей документации»

Код регистратора Код документа Код организации-отправителя
Фамилия Номер документа Сокращенное название
Имя Дата регистрации Полное название
Отчество Краткое содержание документа Юридический адрес
Должность Тип документа Телефон
Дата приема на работу Код организации-отправителя ФИО руководителя
  Код регистратора  

Вариант 8. БД «Увольнение сотрудника»

Код сотрудника Код документа Код статьи увольнения
Фамилия Номер документа Название статьи увольнения
Имя Дата регистрации Причина увольнения
Отчество Дата увольнения Номер статьи увольнения
Должность Код статьи увольнения Номер пункта/подпункта увольнения
Подразделение Код сотрудника  
Дата приема на работу Денежная компенсация  

Вариант 9. БД «Приказ на отпуск»

Код сотрудника Код документа Код отпуска
Фамилия Номер документа Тип отпуска
Имя Дата регистрации Оплата отпуска
Отчество Дата начала отпуска Льготы по опуску
Должность Дата окончания отпуска  
Подразделение Код сотрудника  
Дата приема на работу Код отпуска  

Вариант 10. БД «Регистрация выходящей документации»

Код отправителя Код документа Код организации-получателя
Фамилия Номер документа Сокращенное название
Имя Дата регистрации Полное название
Отчество Краткое содержание документа Юридический адрес
Должность Тип документа Телефон
Дата приема на работу Код организации-получателя ФИО руководителя
  Код отправителя  

 

 

Вариант 11. БД «Назначение на должность»

Код сотрудника Код документа Код должности
Фамилия Номер документа Название должности
Имя Дата регистрации Льготы по должности
Отчество Дата назначения Требования к квалификации
Дата приема на работу Код сотрудника  
Дата рождения Код должности  
Пол    

Вариант 12. БД «Выдача оборудования в прокат»

Код клиента Код выдачи Код оборудования
Фамилия Номер документа Название оборудования
Имя Дата начала проката Тип оборудования
Отчество Дата окончания проката Дата поступления в прокат
Адрес Код оборудования  
Телефон Код клиента  
Серия и номер паспорта Стоимость  

Вариант 13. БД «Списание оборудования из проката»

Код оборудования Код оборудования Код сотрудника
Название оборудования Причина списания Фамилия
Тип оборудования Дата списания Имя
Дата поступления в прокат Код сотрудника Отчество
  Номер документа Должность
  Дата регистрации Дата приема на работу
  Код списания  

Вариант 14. БД «Прием цветов в магазин»

Код цветка Код цветка Код поставщика
Название цветка Дата поступления Сокращенное название
Сорт цветка Цена за единицу Полное название
Средняя высота Код поставщика Юридический адрес
Тип листа Код поступления Телефон
Цветущий Количество ФИО руководителя
Дополнительные сведения    

Вариант 15. БД «Регистрация клиентов гостиницы»

Код номера Код регистрации Код клиента
Тип номера Код номера Фамилия
Перечень удобств Дата заезда Имя
Цена за сутки Дата выезда Отчество
  Стоимость Адрес
  Код клиента Телефон
    Серия и номер паспорта

 

Вариант 16. БД «Возврат оборудования в службу проката»

Код клиента Код возврата Код оборудования
Фамилия Номер документа Название оборудования
Имя Дата возврата Тип оборудования
Отчество Состояние оборудования Дата поступления в прокат
Адрес Код оборудования  
Телефон Код клиента  
Серия и номер паспорта Штраф  

Вариант 17. БД «Учет материальных ценностей на предприятии»

Код ценности Код постановки на учет Код материально ответственного
Название ценности Код ценности Фамилия
Тип ценности Код материально ответственного Имя
Закупочная стоимость Дата постановки на учет Отчество
Срок гарантии Место нахождения ценности Должность
Дата начала гарантии   Дата приема на работу
    Подразделение

Вариант 18. БД «Состав ремонтных работ»

Код ремонтной работы Код ремонтной работы Код мастера
Код этапа работы Код мастера Фамилия мастера
Название этапа работы Стоимость ремонта Имя мастера
Стоимость этапа Количество дней ремонта Отчество мастера
  Название ремонтной работы Разряд мастера
    Дата приема на работу

Вариант 19. БД «Продажа лекарственных средств»

Код лекарства Номер чека Номер чека
Название лекарства Цена за единицу Дата продажи
Показания к применению Количество Сумма
Единица измерения Код лекарства ФИО кассира
Количество в упаковке Код записи в чеках  
Название производителя    

Вариант 20. БД «Учет исполнения по входящей документации»

Код исполнителя Код документа Код документа
Фамилия Дата назначения на исполнения Номер документа
Имя Срок выполнения в днях Дата регистрации
Отчество Тип результата Краткое содержание документа
Должность Код исполнителя Тип документа
Подразделение Факт исполнения Организация-отправитель
Дата приема на работу   Код исполнителя

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-11-23 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: