Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.07.2011, 14:53   #1
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию MySQL/SQLite, организация массивов.

не особо дружу с БД, но тут возник такой вопросец, как лучше всего организовать хранение массивов?

были варианты:
покажу примеры на основе данной страницы
http://www.pwdatabase.com/ru/items/6210
1)связь элемента массива с объектом по id.
то есть таблица самого предмета:
id name type ...
и таблица дополнений(это графа возможные дополнения):
id itemid type value chance
но не жирен ли вариант?
2)сериализация массива, тут вроде б все просто, но мне не нравится что по такому массиву не поискать запросом(или все таки можно?)
3).....или есть какие то встроенные средства?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.07.2011, 18:05   #2
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Когда-то давно копался в базе какой-то из игрушек (уже не помню точно, WoW или Lineage) Там было организовано наподобие описанного Вами первого способа.
Правда, с небольшим отличием: там было 3 таблицы.
1 - Таблица предметов
2 - Таблица всевозможных плюшек, котороые можно к предметам присобачить
3 - таблица связка, типа предмет - плюшка
Если я правильно помню из теории реляционных БД Ваш вариант id itemid type value chance не удовлетворяет условию нахождения во второй нормальной форме.
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 07.07.2011, 18:16   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

в принципе вариант с тремя таблицами даже лучше, так как не будет дублирования плюшек по тысяче раз.

про вторую форму почитаю, думаю тогда связку аккаунт->персонажи хранить так же(там лимит уже есть)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 07.07.2011 в 18:19.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.07.2011, 21:24   #4
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Со связкой аккаунт->персонажи всё зависит от того, будет ли возможность создавать несколько персонажей на одном аккаунте. Если нет, лучше обойтись без таблицы связки.
Позволю себе задать вопрос, т.к. распирает "по самые немогу"
Вы делаете он-лайн игру? Браузерку или что-то большее?
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 07.07.2011, 22:39   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

в данный момент я проектирую БД для сайта клана

а так позже, может игрой займусь, но там еще не решено ничего(просто, или я сделаю на платформе подобной dotNET(соответственно её надо доработать), или же на шарпе/С++).

персонажей может быть несколько.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 08.07.2011, 09:16   #6
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Если играли в lineage2, то можете скачать датапак какого-нибудь фришного сервера и поколупать его. В принципе, разбирающемуся человеку не так уж и сложно понять, что там к чему.
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 08.07.2011, 10:39   #7
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

в линейку я не играл
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 08.07.2011, 10:59   #8
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Ну тогда разбираться сложнее, но, в принципе, возможно. Конечно, если есть желание.
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Организация поиска на PHP+MySQL yfnf3 Помощь студентам 2 14.02.2011 22:15
Нужно переписать с sqlite на mysql Maxxxtri23 PHP 0 08.12.2010 19:27
Паскаль.Организация одномерных массивов и использование в циклических программах Яська Помощь студентам 4 11.01.2010 18:04
SQLite 3 XeN0N PHP 4 19.01.2009 19:06
Правильная организация класса для работы с таблицей mysql Choo PHP 10 08.08.2008 08:55