2010-07-24 3 views
0

Если у вас есть миллионы записей в таблице mysql, вы часто хотите манипулировать им шестнадцатеричным первичным ключом (на практике вы делаете md5 (имя)). Затем запросы намного быстрее.Огромный стол в Django?

Есть ли способ сделать это с Django? Если нет, обычный первичный ключ int не ограничивает? Как указать, что вы хотите целое число?

ответ

0

Вы можете использовать все, что вам нравится, в качестве первичного ключа в Django. Просто добавьте primary_key=True в аргументы модели. Например.

foo = models.CharField(max_length=36, primary_key=True) 

Адрес Django docs on this topic.

Надеюсь, это поможет.

+0

и у вас может быть только один первичный ключ для каждого класса? – Mermoz

+0

У вас может быть только один первичный ключ на _table_. Это вещь базы данных, а не вещь Django. Однако база данных обычно позволяет сделать первичный ключ из нескольких столбцов. Я не уверен, каким будет поведение, если вы указали два основных ключа в своей модели. Почему бы не попробовать и посмотреть? :-) – godswearhats

Смежные вопросы