Главная / SQL / Для создания таблицы [картинка] CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary DECIMAL(6, 2) NOT NULL, Commission_pct DECIMAL(3, 2) NOT NULL, Branch_id INT REFERENCES Branch (Branch_id)

Для создания таблицы Worker использовалась следующая команда:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary DECIMAL(6, 2) NOT NULL, Commission_pct DECIMAL(3, 2) NOT NULL, Branch_id INT REFERENCES Branch (Branch_id) ON UPDATE SET NULL DEFAULT 20 CHECK (Salary + Salary * Commission_pct >= 1800) )

Отношение Worker состоит из кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.91020.05.98

Отношение Branch состоит из кортежей

Branch_idBranch_titleLocation_id
10SalesNULL

Запрос SQL имеет вид:

UPDATE Worker SET Commission_pct = 0.8, Branch_id = 20 WHERE Branch_id=10

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

вопрос

Правильный ответ:

выражения для столбцов во фразе SET разделены запятой, что недопустимо
выражение Salary + Salary * Commission_pct для новой строки принимает значение, не превышающее 1800
неверный формат нового значения, присваиваемого столбцу Commission_pct
в таблице Branch отсутствует запись об отделе с номером 20
Сложность вопроса
61
Сложность курса: SQL
79
Оценить вопрос
Очень сложно
Сложно
Средне
Легко
Очень легко
Комментарии:
Аноним
Большое спасибо за решебник по интуит.
13 май 2017
Аноним
Экзамен сдал на 4 с минусом. лол
14 май 2016
Оставить комментарий
Другие ответы на вопросы из темы базы данных интуит.