1. Главная
  2. Библиотека
  3. Базы данных
  4. База данных содержит таблицы: —— поставщики p —— товары...
Разбор задачи

База данных содержит таблицы: —— поставщики p —— товары sp —— поставки no sname status city pno pname color city sno pno qty sno pno qty 1 Smith 20 London p1 Nut Red London s1 p1 300 s2 p1 300 2 Jones 10 Paris p2 Bolt Green Paris s1 p2 200 s2 p2 400 3

  • Предмет: Базы данных
  • Автор: Кэмп
  • #Язык SQL и расширения
  • #Реляционные базы данных
База данных содержит таблицы: —— поставщики p —— товары sp —— поставки no sname status city pno pname color city sno pno qty sno pno qty 1 Smith 20 London p1 Nut Red London s1 p1 300 s2 p1 300 2 Jones 10 Paris p2 Bolt Green Paris s1 p2 200 s2 p2 400 3

Условие:

База данных содержит таблицы:\ns —— поставщики p —— товары sp —— поставки\ns_no sname status city p_no pname color city s_no p_no qty | s_no p_no qty\ns1 Smith 20 London p1 Nut Red London s1 p1 300 | s2 p1 300\ns2 Jones 10 Paris p2 Bolt Green Paris s1 p2 200 | s2 p2 400\ns3 Blake 30 Paris p3 Screw Blue Rome s1 p3 400 | s3 p2 200\ns4 Clark 20 London p4 Screw Red London s1 p4 200 | s4 p2 200\ns5 Adams 30 Athens p5 Cam Blue Paris s1 p5 100 | s4 p4 300\np6 Cog Red London s1 p6 100 | s4 p5 400
Какое будет состояние базы данных после команды\nALTER TABLE s ADD COLUMN phone CHAR(10) NOT NULL WITH DEFAULT ‘?’

Решение:

  1. Изначально в таблице s (поставщики) есть столбцы: s_no, sname, status и city, содержащие данные по поставщикам (например, s1: Smith, 20, London и т.д.).

  2. Команда ALTER TABLE s ADD COLUMN phone CHAR(10) NOT NULL WITH DEFAULT ‘?’ говорит СУБД добавить в таблицу s новый столбец с именем phone, типом CHAR(10). Ограничение NOT NULL означает, что в этом столбце не могут быть значения NULL. При этом все существующие и будущие записи автоматически получают в этом столбце значение по умолчанию ‘?’, если не будет указано иное.

  3. После выполнения данной команды структура таблицы s станет следующей:
    • s_...

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Какое ключевое изменение произойдет в таблице `s` после выполнения команды `ALTER TABLE s ADD COLUMN phone CHAR(10) NOT NULL WITH DEFAULT '?'`?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет