БД для хранения значений - PullRequest
0 голосов
/ 30 августа 2011

Я просто хочу узнать мнение разных людей, потому что по какой-то причине я не смотрю в нужных местах, но то, что большинство людей использует или лучше, что является наиболее приемлемым способом хранения чего-либо в базе данных с помощью активное значение или неактивное значение. Я думал о том, чтобы иметь таблицу базы данных для статусов, и первая была бы активной, а другая неактивной, а затем у меня есть форма при создании новой страницы контента или чего-то другого, и у меня есть выпадающий список значений активных (1) или неактивных ( 2) и сохраните 1 или 2 в качестве status_id для этой страницы содержимого.

Это лучший или лучший способ?

Ответы [ 3 ]

3 голосов
/ 30 августа 2011

Я обычно просто использую логическое значение.0 неактивно, а 1 активно.

1 голос
/ 30 августа 2011

Это зависит от используемой вами базы данных и поддерживаемых типов данных.Если бы он имел встроенный тип для Boolean значений, я бы использовал это, в противном случае я бы использовал char(1) с check constraint, который проверяет допустимые значения (0 / 1 или n /y) потому что он работает быстрее любого другого типа и выполняет свою работу.

В случае, если у вас есть несколько логических флагов (которые связаны, но не нужны) и вам не нужна поддержка NULL (который является третьим состоянием) для каждого флага, я бы пошел для столбца numeric с битовыми флагами, если ваша база данных поддерживает это (1=true и 0=false, бит один для флага один, бит два для второго флага ии так далее.
Mysql имеет очень хорошую поддержку битовых операций, см. здесь .

1 голос
/ 30 августа 2011

вы можете использовать как логические, так и enum ('Active', 'Inactive') для того же

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...