Я работаю над тем, что требует от меня хранения массива идентификаторов, соответствующих каждому пользователю.Как хранить массив в базе данных (PHP/MySQL)?
Каждый пользователь должен выбрать номер элементов (мин. 1), каждый из которых имеет уникальный идентификатор. У меня есть массив этих идентификаторов, но я не уверен, как их хранить в db.
Прямо сейчас, я использую php serialize()
для хранения массива, но я считаю, что это неэффективно, поскольку я должен запрашивать данные с помощью php вместо sql.
Я ищу лучший способ сделать это - спасибо!
Best сериализуется –
читает несколько руководств по нормализации базы данных – Joshua
Ответ Квентина правильный; стандартный и наиболее приемлемый способ сделать это - вторая таблица с одной строкой на выбор и потенциально много строк на человека. Это позволяет вам делать такие вещи, как «найти всех, кто выбрал вариант 2, с или без других параметров», который будет медленным и громоздким, если вы сохраните сериализованные массивы. Использование JSON - это только хороший вариант, если вы уверены, что вы абсолютно никогда не захотите получить какую-либо информацию, отличную от полного списка выбранных участников. – octern