русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Создание индекса. Работа с индексом.


Дата добавления: 2013-12-23; просмотров: 951; Нарушение авторских прав


Изменение таблиц.

Создание таблиц в SQL.

Языки БД.

Внутренний язык любой СУБД для работы с данными состоит из двух частей: DDL – язык определения данных и DML – язык управления данными.

Язык DDL используется для первоначального описания и последующей модификации схемы БД, то есть сущностей, их атрибутов и связей между сущностями. Он оперирует с метаданными БД.

Язык DML – набор операторов для операций манипулирования данными, содержащимися в базе. К операциям манипулирования относятся: вставка, модификация, извлечение данных, удаление.

Языки DML делятся на процедурные и непроцедурные. Язык SQL является первым и единственным стандартным языком работы с БД, в его основе лежат непроцедурные операторы. Широко используется в наше время.

 

При создании таблицы необходимо определить ее имя, набор атрибутов и домены. Например:

Create table students (name char (20)

subname char (10)

mark smallint

day date).

Имеется целый набор стандартных типов данных: int, smallint, numeric (p - точность, s – дробная часть), float, char (n), varChar(n), date.

При заполнении таблиц можно некоторые атрибуты опускать, тогда при заполнении им присваивается значение null. Пример: insert into students (name, subject, values (‘Иванов’, ‘БД’) <’Иванов’, ‘БД’,null, null)>.

Для таблиц можно определить значение атрибутов по умолчанию. Пример: create table students (name char(20)

subject char(10)

mark smallint default

day date default’now’ ).

<’Иванов’, ‘БД’,3, <11-MARCH-2012>>

Ограничения целостности в таблицах:

1. Ограничение на null-значение. Если есть в таблице атрибуты, которые должны быть известны, они помечаются словами «not null».

2. Ограничение для первичного ключа. Пусть есть таблица, где хранится список отделов, и номер отдела является ключом.



Create table depart (

depno int not null primary key,

name char(20),

address char(30))

3. В таблице все ключи, кроме первичного, называются вторичными, или альтернативными ключами. На них тоже накладывается ограничение уникальности. Пример: пусть задана таблица сотрудников.

Create table empl (

empno int not null primary key,

fname char(20) not null,

lname char(15) not null,

surname char(15) not null,

office char(10),

salary int,

unique (fname, lname, surname))

4. Ограничения внешнего ключа – атрибут или множество атрибутов, которые соответствует определенному первичному ключу другой таблицы.

Create table empl (

empno int not null primary key,

name char(20) not null unique,

office char(20),

depno int not null,

foreign key (depno),

references Dep(depno))

5. Ограничения на значения атрибутов. Есть возможность задания условий для атрибутов. Пример: пусть есть таблица служащих и необходимо, чтобы зарплата была не меньше минимальной.

Create table empl (

empno ….,

salary int check (salary>10000))

 

Структуру таблиц можно менять командой alter table.

1. Можно добавить новый атрибут. Например, определим для служащего его руководителя:

Alter table empl add manage int

2. Можно удалить атрибут:

alter table empl drop salary

3. Можно добавить ограничение в описании таблицы: сделаем номер руководителя внешним ключом:

alter table empl

add foreign key (manage) references empl(empno)

4. Можно удалить ограничения:

alter table empl

drop conststrant <идентификатор>

5. Можно удалить целую таблицу из БД:

alter table empl

Drop table empl

Удаляя таблицу, необходимо убедиться, что ее атрибуты не являются внешним ключом.

 

Если для какой-либо таблицы определены ключи, то для поиска по этим ключам автоматически создаются индексы. Можно явно создать индексы для групп атрибутов. Это необходимо в том случае, если по ним часто осуществляется поиск или если по этим атрибутам нужна сортировка.

Создание индекса может быть и вредно, их не надо создавать для атрибутов, по которым редко осуществляется поиск. Если у атрибутов небольшое количество возможных значений, то для них также нецелесообразно создавать индекс.

Create [unique] [asc|desc]

index <идентификатор индекса>

on <таблица> (колонки [,колонки])

 




<== предыдущая лекция | следующая лекция ==>
Реляционная модель данных. | Создание запросов в базе данных.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.