21.01.2012, 16:21
Os ъnicos requisitos deste tutorial sгo:
- Noзгo bбsica sobre SQL.
- MySQL plugin R6+
Vi muitos posts de ajuda em MySQL, vi que os cуdigos iriam travar o servidor no momento da query, assim como no cуdigo abaixo:
Enquanto fazer a query, o servidor vai ficar travado, MAS no plugin do BlueG vocк pode fazer THREADED QUERY, ou seja, farб a query e o servidor vai continuar rodando ao mesmo tempo.
Vocк pode usar:
Assim a callback vai ser processada em outra thread, PORЙM, vocк vai ter que usar tudo isso dentro da callback OnQueryFinish.
Vocк pode optar por uma callback personalizada com o mysql_query_callback, й muito similar ao mysql_query.
OBS: THREADED QUERY й mais lento, mas nгo irб travar o servidor.
- Noзгo bбsica sobre SQL.
- MySQL plugin R6+
Vi muitos posts de ajuda em MySQL, vi que os cуdigos iriam travar o servidor no momento da query, assim como no cуdigo abaixo:
pawn Код:
mysql_query("SELECT integer FROM table");
Vocк pode usar:
pawn Код:
mysql_query("SELECT integer FROM table", 25);
pawn Код:
public OnQueryFinish(query[], resultid, extraid, connectionHandle)
{
if(resultid == 25)
{
mysql_store_result();
print("Threaded query finalizada com sucesso.", mysql_fetch_int());
mysql_free_result();
}
return 1;
}
pawn Код:
public OnPlayerConnect(playerid)
{
mysql_query_callback(playerid, "SELECT color FROM table", "Callback");
// Aqui as funзхes, o servidor nгo irб travar na query...
for(new i; i < 25; i++) print("O SERVIDOR NГO TRAVOU NA QUERY...");
return 1;
}
forward Callback(query[], index, extraid, connectionHandle);
public Callback(query[], index, extraid, connectionHandle)
{
mysql_store_result();
SetPlayerColor(index, mysql_fetch_int());
return mysql_free_result();
}