Как пользователь вставляет нуль в MS Access? - PullRequest
8 голосов
/ 03 декабря 2008

MS Access поддерживает нулевые значения в коде, но я не могу понять, как вводить нулевые значения непосредственно в таблицу. Это сводит с ума, потому что, как только в поле была введена фигура, оно никогда не может быть удалено / установлено в ноль. Обычно, разрешение строк нулевой длины позаботится об этом, но Access по-разному обрабатывает экспорт XML для нулевой и нулевой строк. Нулевое значение удаляет связанный тег XML, а строка нулевой длины отправляет пустой тег.

Ответы [ 7 ]

4 голосов
/ 03 декабря 2008

Помогает ли параметр «Разрешить строку нулевой длины» в определении таблицы? Это может привести к тому, что пустая строка будет интерпретирована как NULL.

4 голосов
/ 03 декабря 2008

Вы говорите о необходимости сделать это в представлении таблицы? Если вам нужно сделать это в запросе на обновление, вы можете сделать это так:

UPDATE test SET test.test = Null;
2 голосов
/ 01 апреля 2015

Удаление всех символов будет работать, но Access немного переменчив. Нажатие на клавишу Backspace или удаление не будет работать, если в поле нет символов. Я считаю, что лучше всего ввести несколько символов, выделить все и нажать «Удалить», изменить фокус и изменить запись. После всего вышеперечисленного, если вы выполните запрос в поиске «is null», запись будет найдена.

2 голосов
/ 04 августа 2009

нажмите Ctrl-0 и вставьте ноль.

0 голосов
/ 03 декабря 2008

Хорошо, я не думаю, что это легко решаемая проблема, и мой первоначальный вопрос был немного не в порядке. Проблема не столько в нулевых значениях, хотя они и задействованы, сколько в том, как изначально создавалась таблица. Если для создания таблиц, которые вы планируете экспортировать, вы используете файл xsd, то в Access происходит что-то, что приводит к тому, что эти поля обрабатываются немного иначе, чем поля, созданные с помощью редакторов.

Единственное решение, которое я нашел, - это создать новое поле в таблице, переименовать старое поле, скопировать данные из старого поля в новое поле и удалить старое поле.

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

0 голосов
/ 03 декабря 2008

Я на самом деле ищу способ, чтобы непрофессионал мог сделать запись прямо в таблице. В MSSQL вы можете просто нажать Ctrl-0 и вставить ноль. Удаление всех символов не работает. Вместо нуля у вас остается пустая строка. В Access для экспорта они не обрабатываются одинаково.

Я думаю, что я собираюсь в итоге создать файл xslt для использования во время экспорта, который устраняет пустые теги. Таким образом, пользователь не сможет заметить разницу.

Конечно, было бы неплохо иметь возможность ввести нулевое значение.

0 голосов
/ 03 декабря 2008

Просто удалите все символы в столбце, и access добавит для вас нулевое значение, если кумн позволит.

...