Skocz do zawartości
KoPcIu

GameMode oparty o MySQL - Część 2.1 [Funkcje MySQL]

Rekomendowane odpowiedzi

UWAGA!

Poradnik wymaga dodania przykładów używania większości funkcji, jak i poprawek nazewnictwa. Wszystkie elementy w swoim czasie zostaną dodane.

 

------------------------------------------------------------------------

 

Kolejny poradnik z serii obsługi baz danych. Tym razem przedstawiam Wam opis wszystkich możliwości pluginu MySQL autorstwa StrickenKid, oficjalny temat na forum SA-Mp: http://forum.sa-mp.com/showthread.php?t=122983

 

mysql_init

Inicjacja połączenia MySQL.

  • logtype Typ logowania błędów. (LOG_OFF, LOG_ALL, LOG_ONLY_ERRORS) .
  • printerrors Wyświetlanie błędów w konsoli serwera. 1 = TAK, 0 = NIE

Zwracanie: Uchwyt połączenia.

public OnGameModeInit() {
    new MySQL:Handle = mysql_init(LOG_ALL, 1);
    mysql_connect("127.0.0.1", "root", "", "table", Handle, 1);
        // ...
}

mysql_connect

Funkcja rozpoczynająca połączenie z baza danych.

  • host Adres bazy danych MySQL.
  • user Nazwa użytkownika bazy.
  • pass Hasło użytkownika bazy.
  • dbname Nazwa bazy danych.
  • MySQL:handle Uchwyt połączenia zwracany przez mysql_init .
  • auto_reconnect - Opcjonalnie: Ponowne podłączenie do bazy, wykona się po użyciu mysql_ping . 1 = TAK, 0 = NIE

Zwracanie: 1 - poprawne połączenie, 0 - błąd połączenia

public OnGameModeInit() {
    new MySQL:Handle = mysql_init(LOG_ALL, 1);
    mysql_connect("127.0.0.1", "root", "", "table", Handle, 1);
// ...
}

mysql_close

Zakończenie pracy z baza danych. Rozłączenie.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne rozłączenie, 0 - błąd podczas rozłączenia

public OnGameModeInit() {
    new MySQL:Handle = mysql_init(LOG_ALL, 1);
    mysql_connect("127.0.0.1", "root", "", "table", Handle, 1);
// ...
}

public OnGameModeExit() {
mysql_close();
}

 

mysql_select_db

Połączenie z inna nazwą bazy.

  • dbname Nazwa bazy danych.
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne połączenie, 0 - błąd podczas połączenia

public OnGameModeInit() {
    new MySQL:Handle = mysql_init(LOG_ALL, 1);
    mysql_connect("127.0.0.1", "root", "", "table", Handle, 1);
    mysql_query("...");
    mysql_select_db("table2");
    mysql_query("...");
    // ...
}

 

mysql_query

Funkcja do wykonania zapytania do bazy danych.

  • query Zapytanie jakie chcesz wykonać.
  • resultid - Opcjonalnie: Numer identyfikacyjny zapytania przesyłany do OnMysqlQuery .
  • spareid Opcjonalnie: Dodatkowy parametr jaki przesyłamy do OnMysqlQuery .
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, błąd wykonania zapytania (nie zero)

mysql_query("SELECT * FROM users WHERE AdminLevel = 1");

 

mysql_query_array

Funkcja posiada takie same działanie jak mysql_query, jednak zamiast spareid, mamy możliwość przesłania tablicy danych.

  • query Zapytanie jakie chcesz wykonać.
  • resultid - Opcjonalnie: Numer identyfikacyjny zapytania przesyłany do OnMysqlQueryArray.
  • {Float,_}:extravars[] - Tablica z danymi jakie chcemy przesłać do OnMysqlQueryArray.
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, błąd wykonania zapytania (nie zero)

 

 

mysql_store_result

Funkcja zapisuje pobrane dane z zapytania do swojej pamięci. Używaj jej przed rozpoczęciem prac nad swoimi danymi.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_free_result

Funkcja do zwalniania pamięci zapisanej w mysql_store_result.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_result_stored

Funkcja służy do sprawdzania czy dane z zapytania są w pamięci.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - dane w pamięci, 0 - brak danych w pamięci

 

 

mysql_fetch_field

Funkcja służy do pobrania pojedynczego pola z naszego zapytania. 

  • fieldname Nazwa pola jakie chcemy pobrać
  • dest Zmienna do jakiej przypiszemy pobrane dane
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 
 

mysql_fetch_field_num

Funkcja działa tak samo jak mysql_fetch_field jednak zamiast nazwy, używamy numeru pobranego pola.

  • fieldnum Numer pola jakie chcemy pobrać
  • dest Zmienna do jakiej przypiszemy pobrane dane
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 
 

mysql_fetch_row

Funkcja służy do pobrania większej ilości pól z zapytania.

  • dest Zmienna do jakiej przypiszemy dane.
  • splitter Znak jakim poszczególne dane zostaną rozdzielone.
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_real_escape_string

Funkcja zamienia niebezpieczne dane, do formy bezpiecznej, czyli takiej, którą można użyć w mysql_query itp.

  • string Dane jakie mają zostać przefiltrowane
  • dest Zmienna do jakiej zostaną zapisane przefiltrowane dane. 
  • spareid Opcjonalnie: Dodatkowy parametr jaki przesyłamy do OnMysqlQuery .
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_num_rows

Funkcja do zliczenia pobranej ilości rekordów z bazy.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Liczba pobranych rekordów.

 

 

mysql_num_fields

Funkcja zwraca liczbę pól w wyniku.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Liczba pól.

 
 

mysql_affected_rows

Funkcja zwraca liczbę przetworzonych wierszy.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Liczba przetworzonych wierszy.

 

 

mysql_insert_id

Funkcja zwraca ostatnią wartość dodanego rekordu z pola z wartością AUTO_INCREMENT.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Ostatnia wartość rekordu.

 

 

mysql_ping

Funkcja zwraca aktualny stan połączenia z baza danych.

Dodatkowo:Gdy auto_reconnect w funkcji mysql_connect jest włączone, funkcja wznawia połączenie z bazą gdy te zostało przerwane.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 0 - połączenie aktywne, NIE_ZERO - błąd połączenia

 

 

mysql_error

Funkcja zwraca ostatni błąd mysql.

  • dest Zmienna do jakiej zostaną zapisane dane. 
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_errno

Funkcja zwraca ostatni błąd mysql w postaci liczbowej.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Błąd w postaci liczbowej.

 

 

mysql_warning_count

Zwraca liczbę błędów podczas wykonania ostatniego zapytania.

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Liczba błędów.

 

 

mysql_info

Pobiera informacje o ostatnim zapytaniu.

  • dest Zmienna do jakiej zostaną zapisane dane. 

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_stat

Pobiera aktualny stan serwera. (czas pracy, liczbę zapytań itp)

  • dest Zmienna do jakiej zostaną zapisane dane. 
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_get_server_info

Funkcja pobiera wersje serwera.

  • dest Zmienna do jakiej zostaną zapisane dane. 
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_get_host_info

Pobiera informacje o hoscie

  • dest Zmienna do jakiej zostaną zapisane dane. 
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_data_seek

Funkcja przesuwa wewnętrzny wskaźnik. Funkcji używamy przed mysql_fetch_field_num .

  • rownum Numer wyniku, do jakiego chcemy przejść
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_set_character_set

Funkcji używamy do zmiany kodowania danych.

  • csname Nazwa kodowania jakiego chcemy użyć.
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_get_character_set

Funkcja pobieramy kodowanie bazy danych.

  • dest Zmienna do jakiej zostaną zapisane dane. 
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

 

mysql_fetch_int

Funkcja pobiera pojedyncza wartość z zapytania w postaci INT(liczby).

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Pobrana wartość z zapytania.

 

 

mysql_fetch_float

Funkcja pobiera pojedyncza wartość z zapytania w postaci FLOAT(liczby zmiennoprzecinkowej).

  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: Pobrana wartość z zapytania.

 

 

mysql_fetch_string

Funkcja pobiera pojedyncza wartość z zapytania w postaci STRNG(tekstu).

  • dest Zmienna do jakiej zostaną zapisane dane. 
  • MySQL:handle - Uchwyt połączenia zwracany przez mysql_init .

Zwracanie: 1 - poprawne wykonanie, 0 - błąd wykonania

 

------------------------------------------

 

* Posiadamy 3 typy logowania danych.

  • LOG_OFF - Brak logów, żadne dane nie będą logowane.
  • LOG_ALL - Wszystkie dane wykonywane będą zapisywane
  • LOG_ONLY_ERRORS - Zapisywane będą tylko błędy.

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×