←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

SQL Update

Zablokowany

  • +
  • -
Pittero - zdjęcie Pittero 18.01.2011

Witam, moglby ktos mi podac przykladowy fragment kodu ktory bedzie zmienial w tabeli w polu np dane wartosc ??
Bo nie wiem jak dziala SQL i zapytanie typu UPDATE.
Odpowiedz

  • +
  • -
byCZUS - zdjęcie byCZUS 18.01.2011

Coś takiego.

robisz zmienną globalną np.
new Handle: g_SqlTuple
i

public funkcja_update()
{
new cache[512];
format(cache, 511, "UPDATE TABELA SET kolumna=^"%s^", klumna=%d WHERE fafasf=10", jakas_zmienna, jakias_zmienna2);

SQL_ThreadQuery(g_SqlTuple, "QueryHandle", cache);
}


public QueryHandle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
if(FailState)
{
if(FailState == TQUERY_CONNECT_FAILED)
log_amx("Save - Could not connect to SQL database. [%d] %s", Errcode, Error);
else if(FailState == TQUERY_QUERY_FAILED)
log_amx("Save Query failed. [%d] %s", Errcode, Error);
return 0;
}

return PLUGIN_CONTINUE
}

Użytkownik byQQ edytował ten post 18.01.2011 22:32
Odpowiedz

  • +
  • -
AmD - zdjęcie AmD 18.01.2011

chyba źle...



public update(id)
{
new cache[1024],pos

pos = formatex(cache, 1023, "UPDATE `tabela` SET kolumna1 = '%d', kolumna2 = '%d' WHERE nazwa = '%s'", tablica1[id], tablica2[id], nazwa[id]);
SQL_ThreadQuery(g_SqlTuple, "handle_update", cache);

return PLUGIN_HANDLED;
}
public handle_update(FailState,Handle:Query,Error[],Errcode,Data[],DataSize){
if(FailState){
log_amx("SQL Error: %s (%d)", Error, Errcode);
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}


g_SqlTuple == SQL_MakeDbTuple
to kawałek kodu z mojego zapisu, działa...
Użytkownik AmD edytował ten post 18.01.2011 23:42
Odpowiedz

  • +
  • -
byCZUS - zdjęcie byCZUS 19.01.2011

Amd skąd wiesz że źle ? Wiesz dane można wprowadzać do bazy nie używając zmiennej z id. =] np wprowadzenie mapy itp, mój zapis jest też dobry.
Odpowiedz

  • +
  • -
AmD - zdjęcie AmD 19.01.2011

nie o to mi chodziło... bardziej o to: ^"%s^ jak zauważyłem wszędzie korzystają z ' ' / ``

ale ok, koniec spamu autor tematu niech powie które działa ;d
Użytkownik AmD edytował ten post 19.01.2011 16:13
Odpowiedz
Zablokowany