Pular para o conteúdo principal

db_get_field_assoc_int

atenção

This function starts with a lowercase letter.

Descrição

Obtém o conteúdo do campo como um inteiro com nome especificado.

NomeDescrição
DBResult:dbresultO resultado de onde obter os dados
field[]O nome do campo de onde obter os dados

Retorno

Valor recuperado como um inteiro.

Exemplo

// examples.inc

// ...

Examples_CalculateSum(DB:dbConnectionHandle)
{
// Variável de valor de retorno
new ret;

// Conjunto de resultados do banco de dados
new DBResult:db_result_set = db_query("SELECT `value` FROM `examples`");

// Se o conjunto de resultados do banco de dados é válido
if (db_result_set)
{
// Faz operações
do
{
// Adiciona o valor do campo "example" à variável de valor de retorno
ret += db_get_field_assoc_int(db_result_set, "value");
}

// Enquanto a próxima linha puder ser obtida
while (db_next_row(db_result_set));

// Libera o conjunto de resultados
db_free_result(db_result_set);
}

// Retorna a soma calculada
return ret;
}
// mode.pwn

// ...

#include <examples>

static DB:gDBConnectionHandle;

// ...

public OnGameModeInit()
{
// ...

// Cria uma conexão com um banco de dados
gDBConnectionHandle = db_open("example.db");

// Se a conexão com o banco de dados existe
if (gDBConnectionHandle)
{
// Criou com sucesso uma conexão com o banco de dados
print("Criou com sucesso uma conexão com o banco de dados \"example.db\".");
printf("Soma calculada: %d", Examples_CalculateSum(gDBConnectionHandle));
}
else
{
// Falhou ao criar uma conexão com o banco de dados
print("Falhou ao abrir uma conexão com o banco de dados \"example.db\".");
}

// ...

return 1;
}

public OnGameModeExit()
{
// Fecha a conexão com o banco de dados se a conexão estiver aberta
if (db_close(gDBConnectionHandle))
{
// Limpeza extra
gDBConnectionHandle = DB:0;
}

// ...

return 1;
}

Notas

atenção

Usar um handle inválido diferente de zero crasha o seu servidor! Obtenha um handle de conexão de banco de dados válido usando db_query.

Funções Relacionadas

  • db_open: Abre uma conexão com um banco de dados SQLite
  • db_close: Fecha a conexão com um banco de dados SQLite
  • db_query: Consulta um banco de dados SQLite
  • db_free_result: Libera a memória do resultado de uma db_query
  • db_num_rows: Obtém o número de linhas em um resultado
  • db_next_row: Move para a próxima linha
  • db_num_fields: Obtém o número de campos em um resultado
  • db_field_name: Retorna o nome de um campo em um índice específico
  • db_get_field: Obtém o conteúdo do campo com ID especificado da linha de resultado atual
  • db_get_field_assoc: Obtém o conteúdo do campo com nome especificado da linha de resultado atual
  • db_get_field_int: Obtém o conteúdo do campo como um inteiro com ID especificado da linha de resultado atual
  • db_get_field_float: Obtém o conteúdo do campo como um float com ID especificado da linha de resultado atual
  • db_get_field_assoc_float: Obtém o conteúdo do campo como um float com nome especificado da linha de resultado atual
  • db_get_mem_handle: Obtém o handle de memória para um banco de dados SQLite que foi aberto com db_open.
  • db_get_result_mem_handle: Obtém o handle de memória para uma consulta SQLite que foi executada com db_query.
  • db_debug_openfiles: A função obtém o número de conexões de banco de dados abertas para fins de depuração.
  • db_debug_openresults: A função obtém o número de resultados de banco de dados abertos.