|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Базовые средства манипулирования данными в языке SQL
К базовым средствам манипулирования относятся UPDATE, DELETE и INSERT. INSERT для вставки строк в существующие таблицы: Общий синтаксис оператора INSERT выглядит следующим образом: INSERT INTO table_name { [ (column_commalist) ] query_expression | DEFAULT VALUES где query_expression – может быть любым выражением-запросом. Так например возможна вставкв всех строк какой-то таблицы: INSERT INTO EMP (EMP_NO, EMP_NAME, EMP_BDATE) TABLE EMP_TEMP; Вставка одной строки (используется конструктор строки): INSERT INTO EMP ROW (2445, 'Brown', '1985-04-08', 16500.00, 630, 772);Оператор UPDATE для модификации существующих строк в существующих таблицах Общий синтаксис оператора UPDATE выглядит следующим образом: UPDATE table_name SET update_assignment_commalist WHERE conditional_expressionupdate_assignment::= column_name = { value_expression | DEFAULT | NULL } Примеры: Простой: UPDATE EMP SET DEPT_NO = 632, EMP_SAL = EMP_SAL + 1000.00 WHERE PRO_NO = 772; Сложный: UPDATE EMP SET EMP_SAL = (SELECT AVG (EMP1_SAL) FROM EMP EMP1 WHERE EMP.DEPT_NO = EMP1.DEPT_NO) + 1000.00, PRO_NO = NULL WHERE (SELECT EMP1.EMP_SAL FROM EMP EMP1, DEPT WHERE EMP.DEPT_NO = DEPT.DEPT_NO AND DEPT_MNG = EMP1.EMP_NO AND) > 30000.00;Оператор DELETE для удаления строк в существующих таблицах Общий синтаксис оператора DELETE выглядит следующим образом: DELETE FROM table_name WHERE conditional_expressionПример:Простой: DELETE FROM EMP WHERE PRO_NO = 772;Сложный: DELETE FROM EMP WHERE EMP_SAL > (SELECT EMP1.EMP_SAL FROM EMP EMP1, DEPT WHERE EMP.DEPT_NO = DEPT.DEPT_NO AND DEPT.DEPT.MNG = EMP1.EMP_NO);47. Понятие триггера. Механизм триггеров в SQL. Типы триггеров и их выполнение. Триггером называется хранимая в базе данных процедура, автоматически вызываемая СУБД при возникновении соответствующих условий. В языке обеспечиваются возможности определения триггеров, которые вызываются («срабатывают») при вставке одной или нескольких строк в указанную таблицу, при модификации одной или нескольких строк в указанной таблице или при удалении одной или нескольких строк из указанной таблицы. Таблица, с которой связывается определение триггера, называется предметной таблицей (subject table), а оператор SQL, выполнение которого приводит к срабатыванию триггера, мы будем называть инициирующим (triggering SQL statement). Основными областями использования механизма триггеров являются: · Журнализация и аудит. С помощью триггеров можно отслеживать изменения таблиц, для которых требуется поддержка повышенного уровня безопасности. Данные об изменении таблиц могут сохраняться в других таблицах и включать, например, идентификатор пользователя, от имени которого выполнялась операция обновления; временную метку операции обновления; сами обновляемые данные и т. д. · Согласование и очистка данных. С любым простым оператором SQL, обновляющим некоторую таблицу, можно связать триггеры, производящие соответствующие обновления других таблиц. Например, с операцией вставки новой строки в таблицу EMP (прием на работу нового служащего) можно было связать триггер, модифицирующий значения столбцов DEPT_EMP_NO и DEPT_TOTAL_SAL162) строки таблицы DEPT со значением столбца DEPT_NO, которое соответствует номеру отдела нового служащего. · Операции, не связанные с изменением базы данных. В триггерах могут выполняться не только операции обновления базы данных. Стандарт SQL позволяет определять хранимые процедуры (которые могут вызываться из триггеров), посылающие электронную почту, печатающие документы и т. д. Типы триггеров и их выполнение: Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |