русс | укр

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

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

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

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


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

CREATE INDEX – створити індекс


Дата добавления: 2015-07-09; просмотров: 774; Нарушение авторских прав


Синтаксис:

CREATE [UNIQUE][ASC[ENDING]|[DESC[ENDING]] INDEX <IndexName> ON <TableName>(<Field1Name>[,<Field2Name> …]);

Приклад 1:

CREATE UNIQUE INDEX PostVykl ON POSADA1(PostVykl);

Результат показано на рис. 5.6.

Рис. 5.6. Результат індексації поля PostVykl таблиці POSADA1

В СКБД Access, як і у більшості сучасних СКБД, поле або сукупність полів, що визначені як первинний ключ, індексуються автоматично, при цьому, природно, цей індекс є унікальним. Різниця між індексом, що є одночасно й первинним ключем, і просто унікальним індексом, полягає в тому, що поля первинного ключа не можуть приймати значення Null, в той час як поля просто унікального індексу можуть приймати такі значення, але не більше одного разу. Не унікальний індекс можна створити командою CREATE INDEX.

Приклад 2:

CREATE INDEX NmKf ON VYKLADACH1(NomKaf);

Результат показано на рис. 5.7. Щоб отримати більш детальну інформацію, крім тієї, що видно із структури таблиці (ім’я індексу та його склад), треба при відкритій у режимі конструктора таблиці зайти на панель інструментів Вид→Індекси.

Рис. 5.7. Результат індексації поля NomKaf таблиці VYKLADACH

Приклад 3:

CREATE INDEX KafDysc ON ZAKR_DYSC(KodVykl, KodDysc);

Результат індексації показано на рис. 5.8.

Рис. 5.8. Результат індексації полів (NomKaf, KodDysc) таблиці ZAKR_DYSC

Як бачимо, таблиця ZAKR_DYSCвже має два індекси. Індекс Zakr, який складається із полів (KodVykl, KodDysc), був створений автоматично при визначенні цій сукупності полів як PRIMARY KEY при створенні таблиці (п. 5.2.1, приклад 4).

5.2.3. DROP TABLEвидалити таблицю

Синтаксис:



DROP TABLE <TableName1> [,<TableName2> [, … ]];

Приклад 1:

DROP TABLE DYSCYPL1;

5.2.4. DROP INDEXвидалити індекс

Синтаксис:



DROP INDEX <IndexName> ON <TableName>;

Приклад 1:

DROP INDEXKafDyscONZAKR_DYSC;

Інформація про індекси таблиці наведено на рис. 5.9. Як бачимо, в ній залишився один індексZakr , який був створений автоматично при встановленні первинного ключа.

Рис. 5.9. Індекси таблиці ZAKR_DYSC після видалення індексу KafDysc

 

5.2.5. ALTER TABLE - змінити структуру таблиці

Ця команда дозволяє робити практично все з таблицями, що являються частиною бази даних: додати поля разом з описом їх властивостей, у тому числі додати індекс –ADD, видаляти поля та індекси – DROP).

Синтаксис:



ALTER TABLE <TableName1> <Operation1>[,< Operation2> […]];

<Operation> ::= {ADD <FieldDefinition> [<IndexConstraint>] | ADD <IndexConstraint> |DROP <FieldName> | DROP CONSTRAINT <IndexName>}

<FieldDefinition> ::= <FieldName> <Datatype> [DEFAULT <FieldConstraint> [{NULL|NOT NULL}]]

<IndexConstraint> ::= CONSTRAINT <IndexName> {PRIMARY KEY | UNIQUE} (<FieldNameN> [, <FieldNameM> […]]

Приклад 1: додати 2 поля і складений індекс до таблиці ZAKR_DYSC

ALTER TABLE ZAKR_DYSC ADD KodPostTEXT (2), NomKafBYTE, NazvKaf TEXT (25),CONSTRAINT Idx1 UNIQUE (KodVykl, NazvDysc) );

У режимі конструктора нову структуру таблиці показано на рис. 5.10, а її індекси – на рис. 5.11.

Рис. 5.10. Структура таблиці ZAKR_DYSC

Рис. 5.11. Первинний ключ і складені індекси таблиціZAKR_DYSC

Приклад 2: видалимо індексIdx1із таблиці ZAKR_DYSC.

ALTER TABLE ZAKR_DYSC DROP CONSTRAINT Idx1;

Після виконання цього запиту структура індексів повернеться до стану, що приведений на рис. 5.8.

 

Приклад 3: видалимо поле NazvKafіз таблиці ZAKR_DYSC.

ALTER TABLE ZAKR_DYSCDROP NazvKaf;

Примітка. Запити 2 і 3 можна було об’єднати в один запит:

 

ALTER TABLE ZAKR_DYSC DROP CONSTRAINT Idx1, COLUMN NazvKaf;

Приклад 4: Надамо полю NormPost таблиці POSADA1 властивість необов’язкового значення (NULL). Для цього прийдеться спочатку вилучити його, а потім додати з новою властивістю, без якої буде неможливим виконання операції п. 5.2.6.3.

1-й запит. ALTER TABLE POSADA1 DROP COLUMN NormPost;

2-й запит. ALTER TABLE POSADA1 ADD COLUMN NormPost NUMBER NULL;

 



<== предыдущая лекция | следующая лекция ==>
Загальні відомості про мову SQL | INSERT – додати рядок до таблиці


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


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

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

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


 


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

 
 

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

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