Основы современных компьютерных технологий

Изменение структуры таблицы


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

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

  • переименовании существующих индексных полей, так как это требует перезаписи индексных файлов таблицы;
  • изменении длины полей или числа знаков после запятой, так как это может привести к потере данных;
  • изменении типа поля, гак как в случае невозможности автоматического преобразования данных они будут потеряны.
  • Замечание. Перед изменением структуры любой существующей таблицы целесообразно создание резервной копии таблицы и всех ее индексных файлов.

    Для изменения структуры таблицы, являющейся элементом БД, нужно открыть диалоговое окно Конструктора таблиц (Table Designer) со структурой выбранной таблицы. Для этого достаточно открыть окно Конструктора БД, установить в нем курсор на модифицируемую таблицу и нажать кнопку Modify Table (модифицировать таблицу) панели инструментов Database Designer (Конструктор базы данных).

    Рассмотрим подробнее операции по модификации таблицы, выполняемые в окне Конструктора таблиц (Table Designer).

    Добавление полей является самой безопасно]"! операцией. Для ее реализации необходимо с помощью клавиш-стрелок установить курсор па строку, перед которой необходимо вставить новое поле (в любом ее столбце) и нажать кнопку Insert (вставить) (рис. 21.2). При этом появляется новая строка с именем NewField. Далее по рассмотренной технологии можно ввести имя нового поля п его параметры.

    Для удаления лишнего поля достаточно выделить его в окне Конструктора таблиц п нажать клавишу Delete (удалить). Если открытый па данный момент индексный файл не содержит ссылок на удаляемое поле, ч о поле будет удалено. Если такие ссылки имеются, то появится предупреждающее сообщение.


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

    Переопределение характеристик полей, а именно типа, длины или числа десятичных знаков в числовом поле, иногда приводит к проблемам. Без проблем выполняется увеличение длин полей. Для этого достаточно в Конструкторе таблиц выделить нужное поле и увеличить его длину. При этом соответствующий dbf-файл будет переписан и приобретет большие размеры.

    263

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

    Возможны проблемы и при изменении типов полей. Например, преобразование числового поля в символьное возможно всегда при условии достаточного выделения места для образующихся символьных строк. Это преобразование осуществляется с помощью функции STRQ. Обратное преобразование выполняется функцией VAL() и возможно только в тех случаях, когда строка начинается с цифр или пробелов. В противном случае полученное в результате преобразований числовое поле будет иметь нулевое значение. 4 Без проблем осуществляется преобразование даты в строку - функцией DTOC() и обратное преобразование - функция CTOD(), при условии что символьная строка содержит допустимые символы.

    264

    263 :: 264 :: Содержание


    Содержание раздела