SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Русский/Russian

Reply
 
Thread Tools Display Modes
Old 28/01/2014, 10:55 AM   #11
Makar93
Huge Clucker
 
Makar93's Avatar
 
Join Date: Sep 2009
Posts: 496
Reputation: 9
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by ZiGGi View Post
Есть нормальная форма, лучше придерживаться её: http://ru.wikipedia.org/wiki/Нормальная_форма
Поддерживаю и всегда предерживаюсь нормализации данных, предполагаю и скорость обработки данных пострадает при "распиле" строки с кучей разделителей.
__________________
Makar93 is offline   Reply With Quote
Old 28/01/2014, 11:02 AM   #12
Stepashka
Godfather
 
Stepashka's Avatar
 
Join Date: Jul 2008
Location: near PC
Posts: 5,446
Reputation: 117
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Makar93 View Post
Поддерживаю и всегда предерживаюсь нормализации данных, предполагаю и скорость обработки данных пострадает при "распиле" строки с кучей разделителей.
это может сделать MySQL, а вообще человек говорил про бинарное хранение данных.
__________________
Клятва Страуструпа: "Я обязуюсь прилежно комментировать свой код, не использовать goto и следить за состоянием своих потоков и выделяемой памяти. Я обязуюсь не оставлять мусора в системе и избегать однобуквенных переменных. Ресет." © Куч
M&M GM
Status: ON HOLD

Stepashka is online now   Reply With Quote
Old 28/01/2014, 11:06 AM   #13
Urukhay
Gangsta
 
Join Date: Sep 2013
Posts: 637
Reputation: 2
Default Re: MySQL (F.A.Q.)

Доброго времени суток. Подскажите, как на уже имеющееся INT поле можно поставить ключ?
Urukhay is offline   Reply With Quote
Old 28/01/2014, 11:26 AM   #14
Makar93
Huge Clucker
 
Makar93's Avatar
 
Join Date: Sep 2009
Posts: 496
Reputation: 9
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Stepashka View Post
это может сделать MySQL, а вообще человек говорил про бинарное хранение данных.
Про бинарность пропустил, можно даже создать примитивное шифрование данных переводя бинарную строку данных в десятичную систему счисления и храня ее в БД, только разумно ли? Естественно если бинарная строка не имеет длину выходящую за пределы размерности int.
__________________
Makar93 is offline   Reply With Quote
Old 28/01/2014, 11:30 AM   #15
ZiGGi
High-roller
 
ZiGGi's Avatar
 
Join Date: Sep 2008
Location: Russia
Posts: 1,626
Reputation: 274
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Stepashka View Post
это может сделать MySQL, а вообще человек говорил про бинарное хранение данных.
Не вижу ничего про бинарность в вопросе человека.
ZiGGi is offline   Reply With Quote
Old 28/01/2014, 12:06 PM   #16
Stepashka
Godfather
 
Stepashka's Avatar
 
Join Date: Jul 2008
Location: near PC
Posts: 5,446
Reputation: 117
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by ZiGGi View Post
Не вижу ничего про бинарность в вопросе человека.
Не так понял |.

Если человек предлагал хранить данные в одной строке с разделителем, то я ему рекомендую забыть про MySQL вообще.
__________________
Клятва Страуструпа: "Я обязуюсь прилежно комментировать свой код, не использовать goto и следить за состоянием своих потоков и выделяемой памяти. Я обязуюсь не оставлять мусора в системе и избегать однобуквенных переменных. Ресет." © Куч
M&M GM
Status: ON HOLD

Stepashka is online now   Reply With Quote
Old 28/01/2014, 12:12 PM   #17
Makar93
Huge Clucker
 
Makar93's Avatar
 
Join Date: Sep 2009
Posts: 496
Reputation: 9
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Stepashka View Post
Не так понял |.

Если человек предлагал хранить данные в одной строке с разделителем, то я ему рекомендую забыть про MySQL вообще.
Quote:
1 поле ? "0|0|0|0"
или под каждую лицензию свое поле ?
Ну я это понял как хранение строки вместе с разделителями)

Вопрос в тему тогда, есть допустим 50 переменных для игрока, каждая переменная может иметь значения от -20000 до +20000, получается для адекватного хранения данных необходимо делать 50 столбцов в таблице? Если нет, то как лучше?
__________________
Makar93 is offline   Reply With Quote
Old 28/01/2014, 12:45 PM   #18
Stepashka
Godfather
 
Stepashka's Avatar
 
Join Date: Jul 2008
Location: near PC
Posts: 5,446
Reputation: 117
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Makar93 View Post
Ну я это понял как хранение строки вместе с разделителями)

Вопрос в тему тогда, есть допустим 50 переменных для игрока, каждая переменная может иметь значения от -20000 до +20000, получается для адекватного хранения данных необходимо делать 50 столбцов в таблице? Если нет, то как лучше?
Разбей данные на несколько таблиц.
Да и что тебя смущает в 50 столбцах?
Таблица в которой 85 столбцов (масштаб меньшить пришлось что бы сделать скрин):
__________________
Клятва Страуструпа: "Я обязуюсь прилежно комментировать свой код, не использовать goto и следить за состоянием своих потоков и выделяемой памяти. Я обязуюсь не оставлять мусора в системе и избегать однобуквенных переменных. Ресет." © Куч
M&M GM
Status: ON HOLD

Stepashka is online now   Reply With Quote
Old 28/01/2014, 12:49 PM   #19
Urukhay
Gangsta
 
Join Date: Sep 2013
Posts: 637
Reputation: 2
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Stepashka View Post
Разбей данные на несколько таблиц.
А разве не на то придуман и до сей поры улучшается всем известный sscanf? И какая вообще разница строковому полю что там лежит, цифра буква или вообще знак |
Urukhay is offline   Reply With Quote
Old 28/01/2014, 12:55 PM   #20
Stepashka
Godfather
 
Stepashka's Avatar
 
Join Date: Jul 2008
Location: near PC
Posts: 5,446
Reputation: 117
Default Re: MySQL (F.A.Q.)

Quote:
Originally Posted by Urukhay View Post
А разве не на то придуман и до сей поры улучшается всем известный sscanf? И какая вообще разница строковому полю что там лежит, цифра буква или вообще знак |
sscanf придуман для упрощения парсинга строк, а БД для упрощения хранения данных. Строковому полю вообще без разницы, а вот работать удобней когда все отдельно.
  • Проще читать данные.
    Согласись, это:
    Code:
    team=5
    house=8
    place=6
    на порядок наглядней этого:
    Code:
    5|8|6
  • Проще работать с данными
  • Проще их редактировать
  • Проще их искать
Список можно ещё расширить на порядок.
__________________
Клятва Страуструпа: "Я обязуюсь прилежно комментировать свой код, не использовать goto и следить за состоянием своих потоков и выделяемой памяти. Я обязуюсь не оставлять мусора в системе и избегать однобуквенных переменных. Ресет." © Куч
M&M GM
Status: ON HOLD

Stepashka is online now   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[GameMode] Basic MySQL Account Script [MySQL R7, cache functions, easydialog, Whirlpool, salted passwords] ReneG Gamemode Scripts 71 02/03/2014 12:48 PM
[GameMode] MySQL CLEAN GAMEMODE [Whirlpool, MySQL BlueG R7, Cache, Ready Package (Windows)] GiamPy. Gamemode Scripts 13 13/09/2013 05:31 PM
BlueG MySQL plugin - Failed (plugins/mysql.so: undefined symbol: _Z13stringvprintfPKcPc) linuxthefish Plugin Development 10 13/07/2013 11:56 AM
[Tool/Web/Other] MySQL DB Manager - Easily manage your MySQL databases with this remote application fiki574 Tools and Files 13 22/07/2012 10:41 AM


All times are GMT. The time now is 08:36 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.