То, о чем вы спрашиваете, называется нормализацией базы данных. Это разработчики базы данных процесса проектирования, чтобы исключить избыточные или противоречивые данные из БД. В вашем случае наличие поля «Количество экранов» для записей, не имеющих экранов, не имеет смысла, следовательно, необходимо нормализовать.
Чтобы решить вашу проблему, вам нужно добавить в свою базу данных вторую таблицу и поместить туда поле. Затем вы связываете основную и вторую таблицы с уникальным идентификатором поля. Наконец, вы создаете запись только во второй таблице, если запись в основной таблице требует дополнительных подробностей.
Вот краткий обзор этого процесса:
- Добавьте поле в основную таблицу с типом Autonumber. Назовите это CinemaID. Пусть Access использует это как первичный ключ таблицы.
- Создать другую таблицу. Возможно, назовите это Cinema_Detail.
- В новой таблице добавьте поле типа Long. Назовите его CinemaID (используйте то же имя, что и поле первичного ключа в первой таблице). Не позволяйте Access сделать это первичным ключом. Сообщите, что доступ к полю обязателен, и значения в этом поле должны быть уникальными (в противном случае в этой таблице может быть несколько записей, соответствующих одной записи в основной таблице, что противоречит вашему запросу).
- Добавьте еще одно поле для количества экранов.
- В диспетчере взаимоотношений с базой данных создайте отношение «один ко многим» между полями CinemaID в двух ваших таблицах.
Теперь, чтобы указать, сколько экранов имеет кинотеатр, добавьте запись в таблицу Cinema_Detail и укажите CinemaID для соответствующей записи в основной таблице вместе со значением количества экранов.
Дополнительная информация
Если вам интересно
Это невозможно сделать то , что вы спрашиваете непосредственно в основной таблице. В Access поля либо существуют в таблице, либо их нет. Там нет середины. Доступ - это механизм базы данных, и поэтому он придерживается правил правильного проектирования базы данных.