[Ajuda] mysql desempenho
#1

Olб,

Estava estudando sobre "orm" nesse tutorial https://sampforum.blast.hk/showthread.php?tid=499336.

Basicamente estou fazendo isso no sistema de registro/login.
Me surgiu algumas duvidas na questгo do player se conectar no servidor:

1 - nesse trecho segundo autor do tуpico

Код:
        orm_addvar_string(ormdid, APlayerData[playerid][Name], 24, "Nome");
	orm_addvar_string(ormdid, APlayerData[playerid][Senha], 128, "Senha");
	orm_addvar_string(ormdid, APlayerData[playerid][Email], 128, "Email");
	orm_addvar_int(ormdid, APlayerData[playerid][Dinheiro], "Dinheiro");
	orm_addvar_int(ormdid, APlayerData[playerid][Scores], "Scores");
	orm_addvar_int(ormdid, APlayerData[playerid][Mortes], "Mortes");
	orm_addvar_int(ormdid, APlayerData[playerid][Matou], "Matou");
	orm_addvar_string(ormdid, APlayerData[playerid][pIP], 16, "IP");
	orm_addvar_string(ormdid, APlayerData[playerid][DataRegistro], 50, "DataRegistro");
	orm_addvar_int(ormdid, APlayerData[playerid][ID], "ID");
	
	orm_setkey(ormdid, "Nome");
й igual a mesma coisa que tivesse dando "Select .. .. .. where .. .. "

Код:
new Query[800];
// Selecionar Dados
format(Query, sizeof(Query), "SELECT Nome,Senha,Email,Dinheiro,Scores,Mortes,Matou,IP,DataRegistro,ID FROM usuarios WHERE Nome='%s'",  APlayerData[playerid][Name]);
...
1 Duvida, se fizer desta forma daria um problema desempenho certo? jб que estб se puxando muitos dados pra simplesmente verificar se o jogador tem conta ou nгo.

Queria saber da pra otimizar ? ou teria que utilizar mysql_tquery(..,"Select nick,senha,ban from ppcont where name = fulano AND senha = 123 limit 1")
Reply
#2

Cara, jб procurou usar esse tutorial? https://sampforum.blast.hk/showthread.php?tid=579909
Й muito mais atualizado e dinвmico. Vocк vai conseguir ter уtimo desempenho atй. Esse exemplo que vocк tб usando jб tem mais de 4 anos que ninguйm usa, e й para a versгo R33.
Reply
#3

Obrigado mano.

Entendi, mas no caso, no momento estou utilizando "orm", nos exemplos que tem no github do criado do plugin, me surgiu essa duvida seria melhor "select...." puxando somente dados para verificar se jogador estб registrado ou nгo, exemplo "select nick,senha from usersp where name = 'pedro.miguel' AND senha = 1234 limit 1"
Reply
#4

se quiser a iniciar com mysql mesmo use algo mais avanзado, use o mysql mesmo! esse tutorial й antigo mesmo! xD

Para usar o selecionar os dados nгo use o format e sim o mysql_format:

PHP код:
mysql_format(Connectquerysizeof(query), "SELECT * FROM `Contas` WHERE `Nome` = '%e'"PlayerInfo[playerid][pNome]);
mysql_tquery(Connectquery"""", ...); 
-> INSERINDO NO BANCO DE DADOS:

INSERT INTO (Exemplo da public DialogResponse, Inserindo onde tem `Nome` e `Senha` para os valores '%e' й '%e' que no caso e o nome dele e a senha que ele digitou! ( Lembrando que esse e o Registro )

Veja:

PHP код:
mysql_format(Connectquerysizeof(query), "INSERT INTO `Contas` (`Nome`, `Senha`) VALUES ('%e', '%e')"PlayerInfo[playerid][pNome], inputtext);
mysql_tquery(Connectquery"""", ...); 
'%e' = mysql_escape_string

OK? Use uma coisa avanзada й melhor!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)