Помогите придумать как хранить данные из таблицы?

Статус
В этой теме нельзя размещать новые ответы.

NOIP

Гуру форума
Регистрация
17 Фев 2008
Сообщения
327
Реакции
77
Доброго времени суток. есть таблица с большим количеством ячеек, подскажите как реализовать хранение в sql? на данный момент я еще не придумал что можно сделать, таблица имеет в ширину и высоту +- по 10 ячеек. создавать 10 полей в БД я думаю это точно бред, в общем надеюсь на Вашу помощь. спасибо.
 
Но ведь неизвестно что у тебя там за данные, как же можно что-то подсказать по их организации?
10 столбцов в mysql - это нормально, даже 50 нормально, хоть и не удобно для просмотра, но программам и скриптам всё равно. Главное чтоб не было множества повторов в данных и то даже это не всегда критично.
 
Будут просто цифры, просто цифры от 0 до 10.. я думал может можно что нибудь придумать что бы не городить 50 полей в БД. меня не смущает что это слегка не удобно а то что городить такое... я просто помню что можно сжимать данные json но это не то, не подходит мне данный вариант, думал может есть что то другое..
 
Городить - это то чем ты собрался заняться. А база и придумана для хранения таких данных.
 
Будут просто цифры, просто цифры от 0 до 10.. я думал может можно что нибудь придумать что бы не городить 50 полей в БД. меня не смущает что это слегка не удобно а то что городить такое... я просто помню что можно сжимать данные json но это не то, не подходит мне данный вариант, думал может есть что то другое..

А может действительно стоит обойтись serialize, если данных немного, они фиксированных размеров?
Пример Для просмотра ссылки Войди или Зарегистрируйся
PHP:
$serializedData = serialize($array); //where '$array' is your array
file_put_contents('your_file_name.txt', $serializedData);

//at a later point, you can convert it back to array like
$recoveredData = file_get_contents('your_file_name.txt');
$recoveredArray = unserialize($recoveredData);

// you can print your array like
print_r($recoveredArray);


Ты поделись задачей в общих чертах (как часто будут обновляться данные, предполагаются ли какие-то выборки, будут ли они расширяться и прочее).
А то может тебе обойтись SQLite и не париться) Нафига собсно заводить целый сервак mysql ради маленькой таблички.
 
Будут просто цифры, просто цифры от 0 до 10.. я думал может можно что нибудь придумать что бы не городить 50 полей в БД. меня не смущает что это слегка не удобно а то что городить такое... я просто помню что можно сжимать данные json но это не то, не подходит мне данный вариант, думал может есть что то другое..
Зависит от целей, если есть необходимость поиска по столбцам - разбиваешь на столбцы.
Если это типа лога смело храни в одном поле, при помощи serialize, json или даже обычного implode, explode.
 
В общем не чего существенного, есть предмет у которого есть характеристики, ну там высота 15, ширина 30, вес 5 и тд, вот и думаю как бы правильнее реализовать, на всякий случай решил проконсультироваться у более опытных программистов.
Это не логи, это просто информацию об предмете. которая может редактироваться.
 
Я бы сделал вообще несколько таблиц

feature --- характеристика
feature_values --- значения характеристики

product_features --- связь характеристики и её значения с продуктом.

Посмотрите как в нормальных CMS это сделано и возьмите для себя лучшее.
Нужно же думать не о том как сейчас хранить, а о том для чего вы собираетесь хранить - просто вывод на экран? Или использование в фильтре? Или еще с какими целями.
 
В общем не чего существенного, есть предмет у которого есть характеристики, ну там высота 15, ширина 30, вес 5 и тд, вот и думаю как бы правильнее реализовать, на всякий случай решил проконсультироваться у более опытных программистов.
Это не логи, это просто информацию об предмете. которая может редактироваться.
Что ты будешь делать с данными этими? тебе нужно будет выполнять сортировку, получение конкретного значения? если да то делай поля для каждой характеристики.
Если информация будет выводится только на странице конкретного предмета. То можешь хранить сериализованный массив в одном текстовом поле и парсить перед выводом на странице это поле из базы.
 
Будут сортировки, да я уже понял, все буду делать стандартный вариант с большим количеством полей. Всем спасибо. очень помогли!
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху