Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 7 из 7
  1. #1
    Аватар для Ashmy
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.08.2017
    Сообщений
    18
    Репутация:
    0 ±

    столбцы в таблице

    Здравствуйте. Насколько мне известно, нигде не указано, что использование таблиц (SQL) с большим кол-вом столбцов (две сотни, три или даже пять сотен) может привести к чему-то плохому. Правда ли это? Есть пару сотен переменных и соответственно 2 варианта их сохранения:
    1) Создать в таблице для каждой переменной свой столбец (в итоге их может получится вплоть до 500) и работать с ними отдельно: изменилась одна переменная - обновили её значение в соответствующем столбце
    2) Создать всего 1 столбец текстового типа (допустим, на 512 знаков) и формировать запрос с помощью цикла и strcat
    Второй вариант такое себе, как мне кажется

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Вариант 3: Для каждой системы создать свою таблицу и связать данные с таблицей аккаунтов через ID аккаунта игрока.

    Можно создать хоть 1000 столбцов (в плане того, что база данных потянет такое. Делать так не нужно), но будет ли это удобно? Люди годами пытались создать удобный инструмент для хранения и работы с данными, а ты до сих пор работаешь с ним как с файлом.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. #3
    Аватар для Ashmy
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.08.2017
    Сообщений
    18
    Репутация:
    0 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Вариант 3: Для каждой системы создать свою таблицу и связать данные с таблицей аккаунтов через ID аккаунта игрока.

    Можно создать хоть 1000 столбцов (в плане того, что база данных потянет такое. Делать так не нужно), но будет ли это удобно? Люди годами пытались создать удобный инструмент для хранения и работы с данными, а ты до сих пор работаешь с ним как с файлом.
    Вся сотня-две переменных принадлежат к игроку. Никто не хранит данные о бизнесах в таблице аккаунтов, об этом речи не идёт. Я могу разделить таблицу аккаунтов на две, как ты говоришь, но есть ли в этом смысл, если таблица будет "комфортно себя чувствовать" и при наличии 300-х столбцов в себе? Для этого тема и создавалась, если 300-400 столбцов в одной таблице как-то значительно повлияют в худшую сторону на производительность, тогда однозначно стоит разделить. Так каков итог?
    P.S на удобство все равно, пусть там хоть 800 столбцов будет в таблице игрока, никто лезть и менять данные в ручную там не будет, все значения меняются через мод

  4. #4
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Никто и не говорит, что нужно разделять только две совершенно разные системы.
    Система инвентаря, например, может так же мирно лежать в отдельной таблице и не занимать 50 столбцов, а занять всего 4:
    PHP код:
    id account_id item_id value 
    И не нужно никаких огромных форматирований или чего-либо ещё.

    В общем, просто почитай хотя бы о том, что такое Нормальная форма и придерживайся её, если хочешь работать с базами данных правильно. Ну а ответ на твой вопрос был ещё в предыдущем моём сообщении.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  5. Пользователь сказал cпасибо:
    Ashmy (04.11.2017)
  6. #5
    Аватар для Ashmy
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.08.2017
    Сообщений
    18
    Репутация:
    0 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Никто и не говорит, что нужно разделять только две совершенно разные системы.
    Система инвентаря, например, может так же мирно лежать в отдельной таблице и не занимать 50 столбцов, а занять всего 4:
    PHP код:
    id account_id item_id value 
    И не нужно никаких огромных форматирований или чего-либо ещё.

    В общем, просто почитай хотя бы о том, что такое Нормальная форма и придерживайся её, если хочешь работать с базами данных правильно. Ну а ответ на твой вопрос был ещё в предыдущем моём сообщении.
    Не подумал об варианте по типу 1 предмет - 1 строка. Благодарю

  7. #6
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Ashmy Посмотреть сообщение
    Не подумал об варианте по типу 1 предмет - 1 строка. Благодарю
    Я изначально про него и говорил. Об этом как раз и рассказывается в одной из нормальных форм, если я правильно помню.
    Решено?
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  8. #7
    Аватар для Ashmy
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.08.2017
    Сообщений
    18
    Репутация:
    0 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Я изначально про него и говорил. Об этом как раз и рассказывается в одной из нормальных форм, если я правильно помню.
    Решено?
    Да, решено

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •