Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Хранение списка чисел

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
In1ernal Error
Отправлено: 07 Января, 2012 - 23:56:47
Post Id


Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Имеется ряд чисел, который надо как-то хранить в MySQL. Одно число на каждый час суток, в сумме 24 числа.
И встает вопрос: как их хранить в MySQL?
Для начала я сделал так: из чисел создаю строку, между числами ставлю двоеточие и записываю полученную строчку в БД. Потом если надо получить их обратно, разбиваю строку по двоеточиям и получаю массив чисел.

Может есть более правильные способы решения моей задачи? Подскажите если не трудно.
 
 Top
OrmaJever
Отправлено: 08 Января, 2012 - 00:02:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Скорее всего нет.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Panoptik
Отправлено: 08 Января, 2012 - 00:06:38
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2493
Дата рег-ции: Нояб. 2011  
Откуда: Одесса, Украина


Помог: 131 раз(а)




всё зависит от дальнейших действий с этими числами. если нужно будет потом над ними делать операции, например поиск или сортировка/группировка по конкретному числу и его порядковому номеру, то из строки это будет сложновато выдрать на уровне СУБД. и я наверное посоветовал бы хранить каждое число в своем поле, то есть 24 поля. это конечно не мало, но и немного...
а если просто хранение, то можно и строкой. хотя опять таки строка будет занимать намного больше места чем числовые данные


-----
Just do it
 
 Top
In1ernal Error
Отправлено: 08 Января, 2012 - 00:10:36
Post Id


Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Все действия над числами производятся php скриптом. С полями вариант скорее всего отпадает, т.к. есть еще одна такая же задача для месяца, но уже с 24*30=720 числами. А это небольшой перебор получается

(Отредактировано автором: 08 Января, 2012 - 00:11:27)

 
 Top
DlTA
Отправлено: 08 Января, 2012 - 00:26:34
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




In1ernal Error пишет:
Все действия над числами производятся php скриптом. С полями вариант скорее всего отпадает, т.к. есть еще одна такая же задача для месяца, но уже с 24*30=720 числами. А это небольшой перебор получается

тогда не понятно зачем вообще используется база?
 
 Top
Panoptik
Отправлено: 08 Января, 2012 - 00:32:51
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2493
Дата рег-ции: Нояб. 2011  
Откуда: Одесса, Украина


Помог: 131 раз(а)




я бы создал таблицу в которой были следующие поля
ID DATETIME VALUE
и в нее записывал все значения в виде новых записей. а потом с этими значениями можно делать всё что угодно


-----
Just do it
 
 Top
In1ernal Error
Отправлено: 08 Января, 2012 - 01:22:52
Post Id


Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




DlTA пишет:

тогда не понятно зачем вообще используется база?


Хранить в файлах тогда что-ли?
 
 Top
DlTA
Отправлено: 08 Января, 2012 - 02:30:55
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




In1ernal Error пишет:
Хранить в файлах тогда что-ли?
это проще, в данном случае быстрее, а главное автономней (нет зависимости от сервера баз данных).

ну а по поводу храннения, если в конечном итоге серавно приходится разбирать данные в массив, то проще тогда уже записывать не свою недоструктуру, а строку серелизованного массива которая потом читается из файла и сразу же десерелизуется
где то была статистика и подобный метод быстрее чем делать эксплод, хотя объем файла как минимум удвоится
пример (Отобразить)

[подправил]

(Отредактировано автором: 08 Января, 2012 - 02:42:05)

 
 Top
Bio man
Отправлено: 08 Января, 2012 - 02:38:25
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




DlTA, $data = unserialize(file_get_contents("fileName"));
 
 Top
DlTA
Отправлено: 08 Января, 2012 - 02:42:27
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




ага
исправил
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB