Db get field assoc RU

From SA-MP Wiki

Jump to: navigation, search

db_get_field_assoc

Описание:

Позволяет узнать содержимое поля результата по его имени.


Параметры:
(DBResult:dbresult, const field[], result[], maxlength)
DBResult:dbresultИдентификатор результата.
const field[]Имя поля.
result[]Буфер для хранения содержимого поля.
maxlengthЧисло копируемых в буфер символов.


Возвращаемые значения:

Данная функция не возвращает какого-либо конкретного значения.



public OnPlayerCommandText(playerid, cmdtext[])
{
    if (!strcmp(cmdtext, "/stats", true, 6))
    {
        new DB:userdb = db_open("users.db");
        new DBResult:dbresult;
        new name[MAX_PLAYER_NAME];
        new buffer[100];
 
        GetPlayerName(playerid, name, MAX_PLAYER_NAME);
        format(buffer, sizeof(buffer), "SELECT `kills`,`deaths`,`money` FROM `users` WHERE name=lower('%s')", name);         
        dbresult = db_query(userdb, buffer);
 
        // Узнаем значения каждого из 3х запрошенных полей: kills, deaths, money
        db_get_field(dbresult, "kills", buffer, sizeof(buffer));
        format(buffer, sizeof(buffer), " Убийств: %d", strval(buffer));
        SendCLientMessage(playerid, 0x00FF00FF, buffer);
        db_get_field(dbresult, "deaths", buffer, sizeof(buffer));
        format(buffer, sizeof(buffer), " Смертей: %d", strval(buffer));
        SendCLientMessage(playerid, 0x00FF00FF, buffer);
        db_get_field(dbresult, "money", buffer, sizeof(buffer));
        format(buffer, sizeof(buffer), " Всего денег: %d", strval(buffer));
        SendCLientMessage(playerid, 0x00FF00FF, buffer);
 
        db_free_result(dbresult);
        db_close(userdb);
    }
}


Связанные функции

Следующие функции могут быть полезны, т.к. они так или иначе связаны с текущей функцией.

  • db_open: Открывает базу данных или создает новую
  • db_close: Закрывает базу данных и сохраняет внесенные изменения.
  • db_query: Посылает запрос базе данных
  • db_free_result: Удаляет результат запроса к базе данных из памяти сервера
  • db_num_rows: Возвращает число строк результата запроса к базе данных
  • db_next_row: Выполняет переход к следующей строке результата запроса к базе данных
  • db_num_fields: Возвращает число полей результата запроса.
  • db_field_name: Узнает название столбца результата по его номеру
  • db_get_field: Узнает значение столбца результата по его номеру
Personal tools
In other languages