DB2 – система управления реляционными базами данных. Заданное число упорядоченных столбцов и неупорядоченные строки, страница 11

Индексы, созданные без ключевого слово UNIQUE, называются  “не уникальными индексами”.


Кластеризующие и не кластеризующие индексы

Указывая ключевое слово CLUSTER при создании индекса, Вы “просите” DB2 пытаться физически сохранять записи в таблице в заданной последовательности. DB2 не гарантирует, что это  всегда будет возможно. Однако, это не означает, что DB2 будет “пытаться” поддерживать запрошенное физическое упорядочивание строк данных (записей).


Индексы – Информация в каталоге

SYSIBM.SYSINDEXES

NAME

CREATOR

TBNAME

TBCREATOR

UNIQUERULE

COLCOUNT

CLUSTERING

INDEXTYPE

INVXINVO

INVDB111

T_INVOICE

INVDB111

P

2

N

2

SYSIBM.SYSKEYS

IXNAME

IXCREATOR

COLNAME

COLNO

COLSEQ

ORDERING

INVXINVO

INVXINVO

INVDB111

INVDB111

R_INVOICE

R_LINENR

1

2

1

2

A

A

Содержимое каталога столбцов обновляется, когда создается новый индекс.


Физические объекты – Страницы

·  Строка не может занимать более одной страницы

·  Размер страницы по умолчанию – 4 Kбайта. Могут использоваться  32-х Kбайтные страницы

Все данные таблиц и индексов сохраняются в наборах данных на страничках. Физически, все данные сохраняются в 4-х килобайтных блоках (CI). Для того чтобы поддержать строки данных, которые нельзя сохранить в 4-х килобайтных блоках, DB2 также поддерживает 32-х килобайтные страницы. Размер страницы описывается на уровне табличного пространства.


Команда –DISPLAY DATABASE

Команда  -DISPLAY DATABASE может быть использована, чтобы увидеть состояние всех объектов в базе данных. Как вы видите, состояние устанавливается для табличного пространства (не таблиц) и для индексов. Как вы знаете, все индексы на таблицы в базе данных неявно принадлежат к этой же базе данных.

Состояние check pending устанавливается только для табличных пространств     ( не для индексов).


SQL (Structured Query Language) – язык обращения к данным

SQL включает операторы определения данных (DDL -операторы) и операторы манипулирования данными (DML-операторы).

DDL-операторы определяют структуру базы данных.

DML-операторы непосредственно обращаются к данным (извлекают, вставляют, удаляют и изменяют данные) в таблицах.

SQL включает также операторы, позволяющие выполнять такие функции как предоставить или удалить право на использование отдельных ресурсов базы данных (DCL-операторы).

SQL-оператор может быть выполнен одним из следующих путей:

·  Введен интерактивно, используя, например,  SPUFI или QMF.

·  Встроен в приложение, написанное на одном из следующих языков программирования:  Ada, APL2, assembler, BASIC, C, C++,  COBOL, FORTRAN, PL/I или Prolog .

SQL – не процедурный язык. Это значит, что при использовании  SQL вы задаете что вы хотите сделать и как вы хотите это сделать.  В частности при обращении к данным вы задаете только имя таблицы и имя интересуемого вас столбца.  Вы не описываете метод доступа.

Пример SQL-оператора  SELECT:

SELECT DEPTNO, DEPTNAME

FROM DSN8510.DEPT

WHERE ADMRDEPT = 'D01';

Вы можете использовать SQL оператор, чтобы вставить новые строки в таблицу, изменить существующие строки или удалить строки.


SQL операторыгруппыDML (Data Manipulation Language)

  • SELECT
  • INSERT
  • UPDATE
  • DELETE

Выборка значений из требуемых столбцов

 


Столбцы для

                                                                                            вывода на экран

 


SELECT     company_no,    co_name

FROMcompany

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