Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
157
Добавлен:
16.04.2013
Размер:
6.72 Mб
Скачать

Обновление существующих данных

Наименьшей единицей информации, которую можно обновить в реляционной БД, является значение одного столбца в одной строке значений.

Для обновления 1-го или нескольких столбцов 1-й таблицы существует оператор UPDATE

--UPDATEимя_таблицы --SET--- имя_столбца = выражение------------------------------------------

выражение | | | |

<------- , ----------------------- WHEREусловие_поиска

Пример.

Изменяем номер и категорию телефона для определенной квартиры.

UPDATE TPHONE SET NTEL = ’111-0000’, TCATEGORY = ‘C’ WHERE ADR = ‘Зеленоград, 904-55’

Используя оператор UPDATE, можно одновременно изменить несколько столбцов.

Выражение, которое записывается в операторе присваивания, может быть любым правильным выражением языка SQL, результирующее значение которого имеет тип данных соответствующий целевому столбцу. Значение выражения вычисляются на основе значения строки, которое в данный момент обновляется в целевой таблице. Выражение не может содержать какие-либо агрегатные функции и вложенные запросы. Если выражение содержит ссылку на 1-н из столбцов целевой таблицы, то для вычисления выражения используется это значение в текущей строке, которое было перед обновлением. То же самое справедливо для ссылок на столбцы в предложенииWHERE.

Язык обработки данных (DML) состоит из операторовUPDATE,DELETE.

DML – Data Manipulation Languages.

DDL – Data Definition Languages.

35. Задание и изменение структуры бд: операторыCreatetable,droptable,altertable.

1.CREATE TABLE. – создание базы таблицы описывается структура таблицы.

Определение первичного ключа

Определение внешнего ключа

REFERENCES имя_таблицы

Условия уникальности данных.

Возьмем таблицу PERSON, опишем ее структуру:

CREATE TABLE PERSON (INTERBASE)

( NOM INTEGER NOT NULL,

FIO CHAR(30) NOT NULL,

RDATE DATE NOT NULL,

POL CHAR(1),

SUMD FLOAT DEFAULT 0.00,

ADR CHAR(30),

PRIMARY KEY (NOM),

FOREIGN KEY (ADR) REFERENCES FLAT,

CHECK (POL IN(‘М’,’Ж’)))

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

Вид ограничения ---------- [порядковый номер ограничения]

PK– первичный ключ.

FK– вторичный ключ.

CK–

DU– условие уникальности данных.

Пример

CREATE TABLE HAAVE_D

( NOM INTEGER,

ID INTEGER,

COMMENT CHAR(30),

CONSTRAINT PK_HAVE_D PRIMARY KEY (NOM, ID),

CONSTRAINT FK_HAVE_D_1 FOREIGN KEY (NOM) REFERENCES PERSON,

CONSTRAINT FK_HAVE_D_2 FOREIGN KEY (ID) REFERENCES PROFIT,

CONSTRAINT CK_NOM CHEK(NOM IS NOT NULL),

CONSTRAINT CK_ID CHEK(ID IS NOT NULL))

2. Удаление таблицы. Ненужные таблицы можно удалить из бд посредством оператора drop table.

При удалении таблицы из БД теряются определения и содержимое таблицы.

Параметр CASCADEуказывает на необходимость удалять не только саму таблицу, но и все другие объекты БД, которые содержат ссылки на удаляемую таблицу.

Если задан RESTRICTи в базе данных имеются объекты данных, содержащие ссылку на удаляемую таблицу, то таблица не удалится. Если не указано ни один из параметров, тоDROPбудет выполняться в зависимости от того, как будет описана таблица.

Соседние файлы в папке бд