Лучшие публикации
- Language Tool - проверка грамматики для русского языка
- О проекте
- Условия распространения и копирования информации
- Набор пользовательских настроек для OpenOffice.org Pro
- Сделаем наш офис лучше
- Объекты Math: редактор формул OpenOffice.org
- Описание набора пользовательских настроек для OpenOffice.org Pro
- CyrillicTools — библиотека для работы с кириллицей
- Шаблон для оформления конструкторской документации (КД)
- AltSearch - замечательный диалог поиска и замены для Writer
Совет дня
Impress позволяет создавать слайд-шоу, включающие диаграммы, графические объекты, видео и звук
Опросы
см. также...
Нашли опечатку?
База данных за пять минут. Создание |
Автор bsv999 | |
12.07.2008 г. | |
Потребовалось мне создать небольшую базу данных по видеоматериалу, который имеется у меня и моих знакомых. Хочется иногда посмотреть определённый фильм, но не помнишь, где он лежит (в коробке с DVD-дисками, на жёстком диске или брал на флешке у знакомого на работе). По некоторым причинам мне пришлось создать базу данных в программе OpenOffice.org Base 2.4 pro, используя встроенный движок баз данных. В этой статье кратко описан процесс создания этой базы данных. Проектирование базы данныхДля начала необходимо понять, как будет работать база, что она должна хранить и как показывать свои данные. На листке бумаги набрасывается схема главной таблицы, указываются её поля:
Все таблицы и все поля всех таблиц называются большими английскими буквами. Создание базы данныхТеперь, когда принцип работы базы данных в общих чертах ясен, приступаем к созданию в ООо новой базы данных. Если вы сохраните базу данных в какой-нибудь каталог, а потом добавите этот каталог в доверенные ("Сервис" - "Параметры" - "OpenOffice.org" - "Безопасность" - "Безопасность макросов" - "Доверенные источники"), то макросы будут запускаться без дополнительного вопроса.
Присвоим нашей новой базе данных имя VideoBase и расположим в удобном нам месте. Теперь надо "Создать таблицу в режиме дизайна". Заполняем столбец "Название поля" нашими полями. Все свойства полей оставляем по умолчанию, кроме одного - DESCRIPT, его длину увеличим в 10 раз. При сохранении таблицы программа предложит создать первичный ключ: Ключ необходим, ведь без него таблица будет в режиме "только чтение" (я не критикую ООо за это необоснованное ограничение), поэтому мы создаём поле ID. Свойство "Автозначение" этого поля надо установить в состояние "Да" и закрыть эту таблицу. В этих двух таблицах сразу после первого сохранения и создания первичного ключа переименовываем ключевое поле в TYPES_ID и USERS_ID (это делать необязательно, просто я привык называть ключевое поле таблицы именем таблицы). Потом заходим в меню "Сервис" - "Связи..." и создаём связи согласно нашей схеме - захватываем мышкой поле TYPE из таблицы MAIN и соединяем его с полем TYPES_ID таблицы TYPES, повторяем эти действия для таблицы USERS (эти связи делать необязательно, просто я привык к этому). Создание формыПроцесс создания формы несложен и отдельного описания не требует: с помощью мастера выбираем все поля, создаём форму для таблицы MAIN. Все установки оставляем по умолчанию, только на пятом шаге "Расположить элементы управления" выбираем расположение, отличное от таблицы, и на восьмом шаге включаем режим "Модифицировать форму". Настройка формыНастройка формы заключается в добавлении "Графических элементов управления" и изменении типа объектов, связанных со справочниками (помните - "мастер создания форм не может создать графическое поле и поле со списком"?). Сложнее настроить справочные поля. Для этого "Текстовое поле" надо заменить на "Список", а потом заставить этот список работать. Итак, сначала обработаем поле TYPE:
Для нормальной работы нашего поля со списком необходимо поменять порядок полей в таблице-источнике - ключевое поле должно быть вторым по списку (я опять не критикую ООо за это необоснованное ограничение). Передвинуть поле в дизайнере таблиц невозможно (и опять ни слова про MS Access, в котором это делается простым движением мыши). Для смещения одного поля я делаю следующее:
Двойным щелчком открываем таблицу TYPES для ввода данных. Надо ввести хотя бы три записи: Проверяем наш изменённый контрол на форме (чтобы он заработал, надо перезагрузить форму): Аналогичные операции проделываем с полем и таблицей USERS. Использование базы данныхЕсли все справочники имеют хотя бы одну запись, то можно перезагрузить форму и ввести первую запись в главную таблицу. Для вставки картинки надо дважды щёлкнуть левой кнопкой мышкой по графическому полю (правая кнопка вызывает контекстное меню, с помощью которого можно вставить или удалить картинку).
|
|
Последнее обновление ( 18.08.2008 г. ) |
« Пред. | След. » |
---|
Комментарии
2. Применять первичные поля с NULL значением можно. Только осторожно. Рекомендации не делать этого исходят из свойств секвенсеров, которые не генерируют NULL поля. Но если вы используете NUll значение в индексе, обычно просто по этому значению не будет произведено индексирование. То же самое верно и для составных индексов.
Нормальная модель БД прямо заставляет реализовывать всё, даже средства навигации средствами БД. Ибо так получается при правильном подходе быстрее.
В приложении установлены макросы на клавиши "ПРедыдущее и следующее". Они не работают.
Модальная форма "Новая" Не получает данные в поля со списком.
Утверждение, что если дата фильма неизвестна, то установить дату в 0000 говорит о том, что дата будет установлена в 1 января 1970 года.
И посмотрите, пожалуста макросы, они глючат. Цитировать