Типы данных в языке SQL-ORACLE.
ЛЕКЦИЯ № 13
Проектирование SQL баз данных
Учебные вопросы:
Системный каталог БД Oracle, его использование.
Создание, удаление и изменение SQL-таблиц.
Типы данных в языке SQL-ORACLE.
Литература:
1. Бобровский, С. Oracle Database XE для Windows. Эффективное использование/ С. Бобровский. – М. : Лори. 2009. – 512 с.
2. Джейсон Прайс. SQL для Oracle 10g. Изд. Лори. 2010 г. – 556 с.
Объектами базы данных Oracle называются специальные структуры, используемые системой баз данных для представления пользовательской и системной информации. К рассматриваемым в данном пособии объектам базы данных относятся следующие:
1. таблицы (TABLE);
2. представления (VIEW);
3. индексы (INDEX);
4. последовательности (SEQUENCE);
5. синонимы (SYNONYM);
6. ограничения (CONSTRAINTS).
Для создания, изменения и удаления (эти действия так же обобщено называются управлением объектами) объектов базы данных, называемых далее сокращенно объектами, используются соответственно тройки команд CREATE, ALTER и DROP языка SQL; например CREATE TABLE, ALTER INDEX, DROP VIEW. Эти команды языка SQL получили историческое название команды языка определения данных (Data Definition Language). Для некоторых объектов схемы существуют так же команды CREATE OR REPLACE, с помощью которых можно предварительно удалить существующий одноименный объект и создать новый с тем же именем.
Для создания таблицы используется команда CREATE TABLE.
При создании таблицы указывается:
· имя таблицы и схема, в которой таблица создается (опционально);
· определения полей таблицы;
· определения ограничений;
· дополнительные опции, например, описывающие физическое размещение таблицы, и т.д.
Определение поля таблицы включает:
· имя поля, которое должно быть уникальным в данной таблице и соответствовать общим правилам (см. Часть 1 Пособия);
· тип значения поля;
· значение по умолчанию (опционально);
· список ограничений, накладываемых на это поле.
Численные типы | ||
NUMBER | число в формате целого и вещественного с указанием общей длины значения в количестве значащих символов всего числа и дробной части | NUMBER NUMBER(10) NUMBER(10,2) длина до 22 байт |
FLOAT | число в формате вещественного с указанием общей длины значения в количестве значащих символов | FLOAT FLOAT(10) длина до 22 байт |
BINARY_FLOAT | вещественное число длиной 32 разряда | BINARY_FLOAT длина 4 байта (5) |
BINARY_DOUBLE | вещественное число длиной 64 разряда | BINARY_DOUBLE длина 8 байт (9) |
INTEGER INT SMALLINT | ANSY-типы для хранения целочисленных значений (хранятся как значения NUMBER) | длина 22 байта |
REAL DECIMAL | ANSY-типы для хранения вещественных значений (хранятся как значения FLOAT) | |
Символьные | ||
CHAR CHARACTER | символьные данные фиксированной длины | CHAR CHAR(20) |
NCHAR NCHARACTER | символьные данные фиксированной длины с использованием символом национальных алфавитов | |
VARCHAR2 VARCHAR | символьные данные произвольной длины | |
NVARCHAR2 | символьные данные произвольной длины с использованием символом национальных алфавитов | |
Типы для представления значений дат и времени | ||
DATE | значение даты | |
TIMESTAMP | значение даты и времени | |
Специальные типы | ||
BLOB | бинарные данные очень большого размера | |
CLOB NCLOB | текстовые данные очень большого размера | |
ROWID | представляет адрес записи таблицы | |
При определении поля таблицы можно указать значение по умолчанию, используя ключевое слово DEFAULT и выражение для этого значения; в выражении можно использовать функции, но нельзя использовать другие поля этой записи и подзапросы.
CREATE TABLE DefaultTest
( name CHAR(20) DEFAULT 'Неизвестно',
datereg TIMESTAMP DEFAULT current_date,
num NUMBER(10) DEFAULT SIN(0.5))
INSERT INTO DefaultTest
VALUES ( 'Ana', DEFAULT, DEFAULT )
Для изменения определения таблицы предназначена команда ALTER TABLE.
· изменение имени таблицы;
· изменение имени существующего поля;
· добавление нового поля;
· удаление существующего поля;
· изменение типа существующего поля;
· изменение выражение для виртуального поля;
· создание нового ограничения;
· удаление существующего ограничения;
· изменение имени существующего ограничения;
· отключение и включение действия ограничений;
· изменение физических параметров размещения таблицы и т.д.
1. Переименование таблицы
ALTER TABLE "Все заказы(кп)" RENAME TO "Все заказы(кп1)"
RENAME "Все заказы(кп)" TO "Все заказы(кп1)"
2. Добавление нового поля
ALTER TABLE "Клиент(кп)" ADD ( "Образование" CHAR(20) )
3. Удаление поля
ALTER TABLE "Клиент(кп)" DROP ("Образование")
4. Переименование поля
ALTER TABLE "Клиент(кп)" RENAME column "Образование" TO "Степень"
5. Изменение типа поля
ALTER TABLE "Клиент(кп)" MODIFY "Степень" NVARCHER2(20)
6. Установление значения по умолчанию
ALTER TABLE "Клиент(кп)"
MODIFY "Степень" DEFAULT 'отсутствует'
7. Добавление нового поля со значением по умолчанию
ALTER TABLE "Клиент(кп)"
ADD ( "Степень" NVARCHAR2(20)
DEFAULT 'отсутствует' )
Добавление нового ограничения
ALTER TABLE "Клиент(кп)"
ADD CONSTRAINT "Клиент(кп)_Ф_С"
UNIQUE ( "Имя", "Фамилия" )
<== предыдущая лекция | | | следующая лекция ==> |
Удаление таблиц. Для удаления SQL-таблиц используется команда DROP TABLE. | | | Грузовые и пассажирские автоперевозки |
Дата добавления: 2015-08-21; просмотров: 1369;