StrangeAttractor
@StrangeAttractor

Какая PHP ORM умеет работать с естественными ключами без автоинкрементных ID?

Во многих случаях с точки зрения реляционной модели синтетические автоинкрементные ID - ересь. Например в таблице книг первичным ключом естественно использовать ISBN, в таблицах языков/стран/валют и т.п. - ISO-коды, на многие сущнтсти для которых нет стандартов может быть удобно придумать свой "стандарт" удобных человеко-читаемых идентификаторов дабы сохранить возможность удобно проворачивать сложные операции над данными посредством SQL. Кроме этого не редко наиболее логичным идентификатором записи является составной ключ. В других языках есть ORM, вполне подходящие для работы с такими случаями, например та же Entity Framework для .Net. А есть ли подобные ORM для PHP?
  • Вопрос задан
  • 2296 просмотров
Пригласить эксперта
Ответы на вопрос 1
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
Doctrine например, а вообще практически каждый PHP фреймворк имеет свою реализацию. Автоинкримент задается на уровне БД (в mysql по крайней мере), просто внесите изменения в структуру таблицы. По поводу использования ISBN и т.д. в качестве первичного ключа: в mysql рекомендуется использовать числовые типы для данных полей т.к. индексы в этом случае работают быстрее (грубо говоря: поиск по ассоциативному массиву работает медленнее, больший объем накладных данных).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы