dimabest
Июль 24, 2010 02:17:31
Нужно реализовать каталог товаров. Начитавшись статей о NoSQL СУБД, решил попробовать MongoDB.
Однако появилась проблема - как реализовать “код товара”, который можно легко продиктовать по телефону. В обычной БД на эту роль годится автоинкрементный ключ. В MongoDB все ключи - строки в 24 символа… и это проблема.
Есть ли у кого идеи?
Lexander
Июль 24, 2010 23:00:43
Вместо дефолтного генератора значений первичного ключа используйте свой, который обеспечит уникальность.
Не смешивайте понятия первичного ключа и артикула, который обычно используется для людей.
Это может быть артикул, который генерируется по определенным правилам и включает в себя какие-то данные о товаре. Например, код группы и порядковый номер в группе.
Можно использовать часть значения первичного ключа из МонгоБД. Почитайте о структуре этого ключа в справке, последние несколько символов - это автоинкремент. Эту часть ObjectID тоже можно использовать в качестве артикула - для людей.