Qual jeito correto de carregar uma bool em MYSQL? -
ubunttu - 01.06.2016
Estava usando para guardar uma variavel
Код:
new morto[MAX_PLAYERS];
Sendo 1 = vivo, 0 = morto... Entгo resolvi mudar para fazer da forma certa
Mas agora eu mudei ela para um tipo booleana para poder fazer da forma certa
Код:
new bool:morto[MAX_PLAYERS];
Como salvar e carregar essa variavel que antes eu fazia assim
Carregar:
Код:
int_dest[32] = cache_get_field_content_int(0, "morto"); morto[playerid] = int_dest[32];
Salvar:
Код:
mysql_format(ConnectMYSQL, query, sizeof(query), "UPDATE `accounts` SET `spawnpoint` = '%d', `housekey` = '%d', `idiom` = '%d', `banned` = '%d', `expirarban` = '%d', `morto` = '%d', `mortotime` = '%d', `carrohealth` = '%f' WHERE Username = '%s'",
spawnpoint[playerid],
housekey[playerid],
idiom[playerid],
banned[playerid],
expirarban[playerid],
morto[playerid],
mortotime[playerid],
carrohealth[playerid],
GetName(playerid));
mysql_pquery(ConnectMYSQL, query);
Код:
`morto` = '%d',
morto[playerid],
================================================== ===============
Й normal na hora de trocar
Код:
ALTER TABLE `accounts` CHANGE `morto` `morto` BOOLEAN NOT NULL;
No phpmyadmin aparecer como:
Re: Qual jeito correto de carregar uma bool em MYSQL? -
zSuYaNw - 01.06.2016
Tinyint usa 8 bits para armazenar uma bool
bit usa apenas 1 bit para amazenar uma bool
Tente modificar no phpmyadmin..
Re: Qual jeito correto de carregar uma bool em MYSQL? -
ubunttu - 01.06.2016
Quote:
Originally Posted by zSuYaNw
Tinyint usa 8 bits para armazenar uma bool
bit usa apenas 1 bit para amazenar uma bool
Tente modificar no phpmyadmin..
|
ALTER TABLE `accounts` CHANGE `morto` `morto` BIT(1) NOT NULL;
Certo?
Numa pбgina que eu vi bit era igual bool, bit mudou, bool nгo tava mudando...
E pra salvar e carregar lб? Como faz?
Re: Qual jeito correto de carregar uma bool em MYSQL? -
Dayvison_ - 01.06.2016
PHP код:
morto[playerid] = !!cache_get_field_content_int(0, "morto");
Para salvar do jeito que tб mesmo ou entгo podes usar %b que й feito para boolean(Nгo irб diferenciar em nada), e pode ser tanto int(%d) como tinyint(%d), jб que MySQL nгo tem boolean como no SQLite.