SA-MP Forums Archive
[Ajuda] enum em MySQL - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] enum em MySQL (/showthread.php?tid=429178)



enum em MySQL - Mutuka_XTreme - 08.04.2013

Amigos, beleza?
Eu sei que pode ser uma pergunta bem boba, mas й o que tб me dando umas dъvidas, entгo resolvi tirar a dъvida aqui. Jб lн em vбrios lugares que й bom usar um enum quando se tem um server MySQL. Pra quк uso este enum? Como faзo este procedimento?

Desde jб muito obrigado! Abraзos!


Re: enum em MySQL - WotusPower - 08.04.2013

Seria mais ou menos assim:

pawn Код:
enum Porra
{
     pPorra,
     pMendigo,
     pExtreme
};
new PlayerData[MAX_PLAYERS][uPorra];
E Usaria-se assim: (strtock)

pawn Код:
stock UserLoggedIn(playerid)
{
     format(sqlQuery, sizeof(sqlQuery), "SELECT * FROM accounts WHERE username = '%s'", PlayerName(playerid)); // PlayerName returns the name
     mysql_query(sqlQuery);
     mysql_store_result();

     if(mysql_fetch_row(sqlQuery))
     {
          sscanf(sqlQuery, "p<|>e<s[24]s[255]i>", PlayerData[playerid]);
     }
     mysql_free_result();
    return 1;
}
Й Apenas para ter uma ideia, nгo adianta crtrl + v que nгo funcionarб sem seu conhecimento.


Re: enum em MySQL - Mutuka_XTreme - 09.04.2013

Amigo, entendi. Mas nгo entendi o que й isso:
pawn Код:
sscanf(sqlQuery, "p<|>e<s[24]s[255]i>", PlayerData[playerid]);
E outra coisa: tem como eu colocar uma string dentro de um enum?


Re: enum em MySQL - Abravanel - 09.04.2013

Quote:
Originally Posted by Mutuka_XTreme
Посмотреть сообщение
Amigo, entendi. Mas nгo entendi o que й isso:
pawn Код:
sscanf(sqlQuery, "p<|>e<s[24]s[255]i>", PlayerData[playerid]);
E outra coisa: tem como eu colocar uma string dentro de um enum?
Isso estб fazendo uma "divisгo" na resposta do banco de dados e atribuindo os valores ao enumerador com seus blocos correspondentes. Porйm, esta й uma versгo old do MySQL, sugiro utilizar a versгo R7.

Sim, tem como.

pawn Код:
enum
    player_data
{
    player_email[100],
    //....
}

new
    playerdata[MAX_PLAYERS][player_data];
Atribuindo um valor: (exemplo)
pawn Код:
format(playerdata[id][player_email], 100, "player@email.com.br");



Re: enum em MySQL - Mutuka_XTreme - 09.04.2013

Blaz3r, essa parte atribui o valor da consulta ao banco de dados а uma variбvel?

pawn Код:
format(playerdata[id][player_email], 100, "player@email.com.br");



Re: enum em MySQL - HashFr - 09.04.2013

Nгo, tб simplesmente formatando a variavel player_email para o email que ele vai usar. Pra atribuir valores ao banco de dados vocк vai precisar usar uma query.

Код:
format(query, sizeof(query), "UPDATE `table` SET `email` = '%s' WHERE id = '%d'", playerinfo[playerid][pEmail], playerinfo[playerid][pSqlID]);
mysql_function_query(Conexao, query, false, "NoReturnQuery", "");



Re: enum em MySQL - Mutuka_XTreme - 09.04.2013

Nгo HashFr, vocк nгo entendeu. Reformulando a minha pergunta:
Essa parte que o Blaz3r citou coloca em uma variбvel o valor que pegou do Banco de Dados?