W Cat - SQL за 24 часа
- Название:SQL за 24 часа
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
W Cat - SQL за 24 часа краткое содержание
SQL за 24 часа - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Теперь давайте разберемся с тем, как обновить с помощью операгора UPDATE несколько столбцов сразу. Рассмотрим синтаксис подходящего оператора.
update имя_таблицы
set столбец! = 'значение'
[, столбецЗ = 'значение']
[, столбецЗ = 'значение'] [where условие];
Обратите внимание на использование ключевого слова SET' оно одно, а описаний столбцов - несколько. Описания столбцов разделяются запятыми К этому моменту вы, должно быть, уже почувствовали логику SQL. В операторах SQL запятая обычно используется для разделения различно! о типа аргументов.
UPDATE ORDERSJTBL
SET QTY = 1,
CUST_ID = '221' WHERE ORD_NUM = '23A16';
1 строка обновлена.
Здесь запятая использована для разделения описаний, вносимых в столбцы изменений. Опять же, использовать задающее условия выражение с ключевым словом WHERE не обязательно, но обычно необходимо.
Ключевое слово SET в операторе UPDATE используется только один раз Если необходимо обновить несколько столбцов, они разделяются запятыми.
Для удаления данных из таблиц используется команда DELETE. Команда DELETE предназначена не для того, чтобы удалять значения отдельных столбцов, а для того, чтобы удалять целые записи. Оператор DELETE следует применять с осторожностью - слишком уж безотказно он работает.
Чтобы удалить одну или несколько записей из таблицы, используйте следующий синтаксис оператора DELETE.
delete from имя_схемы.имя_таблицы
[where условие];
DELETE FROM ORDERS_TBL
WHERE ORD_NUM = '23A16';
1 строка удалена.
Здесь следует обратить внимание на выражение с ключевым словом WHERE. При удалении строк из таблицы это выражение представляет собой очень важную часть оператора DELETE. Оператор DELETE без ключевого слова WHERE может понадобиться вам крайне редко. Если вы им воспользуетесь, результат будет подобен следующему:
DELETE FROM ORDERS_TBL; 11 строк удалены.
Если ключевое слово WHERE в операторе DELETE опущено, будут удалены все строки таблицы. Поэтому примите за правило всегда использовать ключевое слово WHERE в операторе DELETE.
Перед тем, как использовать операторы DELETE и UPDATE по отношению к таблицам нашей базы данных, было бы неплохо поучиться использовать эти операторы с той временной таблицей, которую мы с вами создали ранее на основе данных одной из таблиц базы данных.
Вы ознакомились с тремя основными командами языка манипуляций данными (DML) - операторами INSERT, UPDATE и DELETE. Вы смогли убедиться, что это достаточно мощная часть SQL, дающая пользователю базы данных возможность пополнять таблицы новыми данными, обновлять или удалять уже имеющиеся данные.
Очень важные уроки общения с базами данных можно получить, если пренебречь внимательным отношением к ключевому слову WHERE. С помощью ключевого слова WHERE в операторах SQL задаются условия отбора, в частности, в операторах UPDATE и DELETE с его помощью определяются строки данных, которые будут обрабатываться в ходе транзакции. При отсутствии ключевого слова WHERE будут обработаны все строки, что для базы данных может оказаться разрушительным. Защитите свои данные, и будьте внимательны при работе с данными.
После всех вышеприведенных предостережений относительно операторовUPDATE и DELETE я вообще опасаюсь их использовать. Если я вдруг изменю все данные в таблице из-за пропущенного ключевого словаWHERE, есть ли какая-либо возможность отменить эти изменения?
Для таких серьезных опасений оснований нет, поскольку у вас имеется не слишком много возможностей для непоправимых изменений в базе данных, хотя для восстановления данных может потребоваться немалое время. На следующем уроке мы рассмотрим вопросы управления транзакциями, когда операции изменения данных можно либо принять как окончательные, либо отменить.
Является ли использование оператораINSERT единственным способом ввода данных в таблицу?
Нет, просто оператор INSERT определяется стандартом ANSI. Различные реализации SQL предлагают свои средства для ввода данных в таблицы. Например, в Oracle имеется утилита SQL*Loader. Многие реализации SQL для ввода данных имеют утилиту под названием IMPORT. На рынке имеется множество книг, в которых эти утилиты описываются в деталях.
Задания практических занятий разделены на тесты и упражнения. Тесты предназначены для проверки общего уровня понимания рассмотренного материала. Упражнения дают возможность применить на практике идеи, обсуждавшиеся в ходе текущего урока, в комбинации с идеями из предыдущих уроков. Мы рекомендуем ответить на тестовые вопросы и выполнить упражнения прежде, чем продолжать дальнейшее чтение книги. Ответы можно проверить по Приложению Б, "Ответы".
1. Используйте таблицу EMPLOYEEJTBL с заданной ниже структурой.
Что случится, если выполнить следующие операторы?
a insert into employee_tbl '('JACKSON', 'STEVE', '313546078', '3178523443');
б insert into employee_tbl values
('JACKSON 1, 'STEVE', '313546078', '3178523443');
В insert into employee_tbl values
('MILLER', 'DANIEL', '230980012', NULL);
r insert into employee_tbl values
('TAYLOR', NULL, '445761212', '3179221331');
д. delete from employee_tbl;
e. delete from employee_tbl "where last_name = 'SMITH';
X. delete from employee_tbl where last_name = 'SMITH' and first_name = 'JOHN';
з. update employee_tbl
set last_name = 'CONRAD';
и. update employee_tbl
set last_name = 'CONRAD'
where last_name = 'SMITH';
K. update employee_tbl
set last_name = 'CONRAD', first_name = 'LARRY';
Л. update employee_tbl
set last_name = 'CONRAD' first_name = 'LARRY' where ssn = '313546078';
1. Ознакомьтесь с Приложением Г, "Операторы INSERT для данных в примерах книги". Выполните операторы INSERT для заполнения данными тех таблиц, которые были созданы в результате выполнения задания упражнения 1 урока 3. После этого вам будет легче разбираться в примерах и упражнениях книги.
2. Используйте таблицу EMPLOYEE_TBL с заданной ниже структурой.
Используя операторы DML, выполните следующее.
а. Измените SSN для служащего по имени Billy Pierce на 310239857.
б. Добавьте информацию о служащем по имени Ben Moore, тел. 317-5649880, SSN равен 313456789.
в Служащий по имени John Smith уволился, удалите соответствующую запись.
6-й час Управление транзакциями
На этом уроке мы обсудим понятия, лежащие в основе управления транзакциями базы данных.
Основными на этом уроке будут следующие темы.
• Определение транзакции
• Команды, используемые для управления транзакциями
• Синтаксис команд для осуществления транзакций и примеры
• Когда следует использовать команды управления транзакциями?
• Последствия недостаточно активного управления транзакциями
Транзакция - это набор действий, выполняемых по отношению к базе данных и рассматриваемый как единое целое. Транзакции являются единицами активности или, иначе, последовательностями действий, выполняемыми в своем логическом порядке. Они могут выполняться как вручную, так и в автоматическом режиме с помощью соответствующих программ. В реляционных базах данных, управляемых с помощью SQL, транзакции осуществляются с помощью команд DML (INSERT, UPDATE и DELETE), уже обсуждавшихся в ходе урока 5, "Манипуляция данными". Транзакция представляет собой внесение в базу данных некоторых изменений. Например, вы осуществляете транзакцию, когда для изменения информации об имени персоны выполняете оператор UPDATE по отношению к соответствующей таблице.
Читать дальшеИнтервал:
Закладка: