Изменение свойств данных (типов данных, размера поля)

Изменение типа данных поля

При разработке проекта БД обычно выбирают тип данных поля и его размер, исходя из назначения поля. В дальнейшем может обнаружиться, что поле, которое первоначально считалось числовым, содержит и буквы. Для числового поля может потребоваться более широкий диапазон значений, чем предполагалось на этапе проектирования, либо возникнуть необходимость изменить его десятичное представление. Во всех перечисленных случаях надо изменить тип данных или размер полей. MS Access позволяет это выполнить, даже если в поля уже введены данные.

Для изменения типа данных необходимо открыть таблицу в режиме конструктора. Щелкнуть по ячейке Тип данных того поля, тип которого надо изменить. Затем щелкнуть по кнопке со стрелкой вниз, расположенной справа. Откроется список типов, из которых можно выбрать новый тип данных (рис. 2.41).

Чтобы изменить тип данных для таблицы Сотрудники, необходимо:

1. Открыть таблицу в режиме конструктора.

2. Выбрать поле ИдентифКод, тип данных – текстовый, нажать на стрелку и в открывшемся списке выбрать – числовой, размер поля установить – действительное.

3. Выйти из режима конструктора, предварительно сохранив изменения.

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

Изменение размера поля

Для текстового и числового поля можно задавать размер поля. Несмотря на то, что текстовое поле позволяет хранить до 255 символов, всегда можно ограничить длину хранимых данных даже до 1 символа. По умолчанию, размер текстового поля всегда равен 50 символам. Можно увеличить размер текстового поля, но если при переопределении поля надо сделать его короче, то при сохранении нового определения поля будет выдано сообщение, что это может привести к частичной потере сохраняемой информации (текстовые значения будут усечены справа до нового размера поля) (рис. 2.42).

Рис. 2.42. Предупреждение об изменении размера поля

Таблица 2.9

Изменение типов данных

Из В Ограничения
Текстовый Мемо MS Access удаляет индексы, содержащие это текстовое поле
Числовой Преобразуемое текстовое поле должно содержать только цифры и допустимые разделители
Дата/Время Текстовое поле должно содержать легко распознаваемое значение даты и/или времени, такое как 11-апр-04 или 5:15 РМ
Счетчик Такое преобразование невозможно, если таблица уже содержит данные
Да/Нет Текстовое поле должно содержать только следующие значения: Да, Истина, Вкл, Нет, Ложь, Выкл
Мемо Текстовый Обрезается текст, содержащий более 255 символов
Числовой Поле Мемо должно содержать только цифры и допустимые разделители
Дата/Время Поле Мемо должно содержать легко распознаваемое значение даты и/или времени, такое как 11-апр-04 или 5:15 РМ
Денежный Поле Мемо должно содержать только цифры и допустимые разделители
Счетчик Такое преобразование невозможно, если таблица уже содержит данные
Да/Нет Текстовое поле должно содержать только следующие значения: Да, Истина, Вкл, Нет, Ложь, Выкл
Числовой Текстовый Нет ограничений
Мемо Нет ограничений
Дата/Время Значение поля должны находиться в интервале от -657 434 до 2 958 465,99998843
Денежный Нет ограничений
Счетчик Такое преобразование невозможно, если таблица уже содержит данные
Да/Нет Нулевое значение или значение Null преобразуется в значение Нет, а остальные значения – в Да
Числовой (другой точности) Исходное число должно находиться в интервале значений для новой точности
Дата/Время Текстовый Нет ограничений
Мемо Нет ограничений
Числовой Нет ограничений
Денежный Нет ограничений, но полученное значение может оказаться округленным
Счетчик Такое преобразование невозможно, если таблица уже содержит данные
Да/Нет Значение 12:00:00 АМ или значение Null преобразуется в значение Нет, а остальные значения – в Да
Денежный Текстовый Нет ограничений
Мемо Нет ограничений
Числовой Значение поля должно находиться в интервале значений числового типа
Дата/Время Значения поля должны находиться в интервале от ‑657 434 до 2 958 465,99
Счетчик Такое преобразование невозможно, если таблица уже содержит данные
Да/Нет Нулевое значение или значение Null преобразуется в значение Нет, а остальные значения – в Да
Счетчик Текстовый Нет ограничений
Мемо Нет ограничений
Числовой Нет ограничений
Дата/Время Значение должно быть меньше 2 958 466
Денежный Нет ограничений
Да/Нет Все значения преобразуются в Да
Да/Нет Текстовый Преобразуется в текстовое выражение Да или Нет
Мемо Преобразуется в текстовое выражение Да или Нет
Числовой Нет = 0 Да = -1
Дата/Время Нет = 12:00:00 АМ Да = 29.12.1899
Денежный Нет = 0 Да = -$1
Счетчик Такое преобразование невозможно

Размер числового поля может меняться от 1 байта (значения от 0 до 255) до 8 байт (если необходимо хранить очень большие числовые значения с плавающей точкой). Если уменьшить размер числового поля, при преобразовании данных могут возникнуть ошибки. MS Access округляет и усекает числовые значения при преобразовании данных с плавающей точкой к целому или денежному типу.

Чтобы изменить в таблице Отделы размер поля НазваниеОтдела, который при создании таблицы был определен по умолчанию, необходимо:

1. Открыть таблицу Отделы в режиме конструктора.

2. Установить курсор в поле Имя поляНазваниеОтдела.

3. В свойствах поля изменить свойство Размер поля на 60 (рис. 2.43).

4. Выйти из режима конструктора, сохранив изменения.

Рис. 2.43. Изменение размера поля

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