2010-01-21 3 views

ответ

3

Вы должны получить сериализованные данные, unserialize(), изменить его, serialize() его обратно и обновить строку таблицы в базе данных новыми сериализованными данными.

Это слишком медленно/затруднительно, и по этой причине вы не должны хранить сериализованные данные в БД.

+0

Теперь я вижу, но можете ли вы порекомендовать мне способ уменьшить количество запросов в моем приложении? Это быстро, да, но хочу уменьшить количество запросов. – greegs

+1

@greegs: не полагайтесь на сериализованные данные и хорошо создавайте свою базу данных. –

1

В общем, и, конечно, где вы хотите хранить большие объемы данных, Аликс прав; попытайтесь сохранить свои данные в виде строк в таблице в базе данных.

В качестве примера, вот кто-то просит помощи в хранении a huge slab of what looks like shopping cart data, и это именно то, что вам нужно избегать.

Однако, если вы имеете дело с небольшими объемами данных, то сериализация является подходящей, так как простое чтение строки для извлечения сериализованных данных, чтобы затем записать ее, вероятно, не является огромным бременем ресурсов.

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

В этом случае я храню серию идентификаторов клиентов в строке для места проведения.

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