#database
#База данных
Вопрос:
Я хотел бы сохранить почтовые индексы в своей базе данных. Существуют почтовые индексы, которые начинаются с 0, и не только в Германии. К сожалению, целочисленный формат не будет работать, потому что 0 будет опущен. Так 01234
бы тогда и стало 1234
. Является ли varChar(5) единственной возможностью?
Почтовый индекс Германии всегда состоит из 5 цифр.
Ответ №1:
Ну, буквенно-цифровые (все, что имеет символ в имени типа данных…). То же самое, что и для телефонных номеров или других данных, которые в основном содержат цифры, но не только.
Комментарии:
1. Извините за поздний отзыв. Я совсем забыл об этом и продолжал работать с Варчаром. Причины varChar были хорошо изложены во всех ответах здесь. Merci!
Ответ №2:
Varchar(5), безусловно, не единственная возможность. Вы можете сохранить их в виде целых чисел, а затем дополнить их начальными нулями в любом приложении, использующем базу данных.
Но ИМО, сохранение их в виде строк (будь то varchar или char) — лучший вариант. Несмотря на то, что они состоят из цифр, на самом деле они не являются числами (например, нет смысла складывать их вместе, и ведущие нули важны). Сохранение их в виде строк также даст вам гибкость, если в конечном итоге вам понадобится использовать почтовые индексы с буквами в них.
Комментарии:
1. Извините за очень поздний отзыв. Я совсем забыл об этом и продолжал работать с Варчаром. Причины varChar были хорошо изложены во всех ответах здесь. Merci BenM!
Ответ №3:
Если они всегда будут состоять из 5 символов, то используйте тип данных, содержащий ровно 5 символов, char(5)
т. Е. Вы даже можете добавить ограничение на столбец, чтобы гарантировать, что все, что вставлено в таблицу, имеет длину ровно 5 символов, а каждый символ-цифра.
Комментарии:
1. Извини, Ян, за поздний отзыв. Я совсем забыл об этом и продолжал работать с Варчаром. Причины varChar были хорошо изложены во всех ответах здесь. Merci!