---
title: "DB_ExecuteQuery | open.mp"
description: "A função é usada para executar uma consulta SQL em um banco de dados SQLite aberto."
canonical: https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_ExecuteQuery
language: pt-BR
---

# DB\_ExecuteQuery

## Descrição

A função é usada para executar uma consulta SQL em um banco de dados SQLite aberto.

| Nome | Descrição |
| --- | --- |
| DB:db | O handle do banco de dados para consultar. |
| const query\[\] | A consulta a ser executada. |
| OPEN\_MP\_TAGS:... | Número indefinido de argumentos de qualquer tag. |

## Retorno

O índice do resultado da consulta (começando em 1) se bem-sucedida, caso contrário 0.

## Exemplos

```c
// entity_storage.inc

EntityStorage_SpawnAll(DB:connectionHandle)
{
    // Seleciona todas as entradas na tabela "entities"
    new DBResult:db_result_set = DB_ExecuteQuery(connectionHandle, "SELECT * FROM `entities`");

    // Se o handle do conjunto de resultados do banco de dados é válido
    if (db_result_set)
    {
        // Faz alguma coisa...

        // Libera o conjunto de resultados
        DB_FreeResultSet(db_result_set);
    }
}
```

```c
// mode.pwn

#include <entity_storage>

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\".");
        EntityStorage_SpawnAll(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

aviso

Sempre libere os resultados usando [DB\_FreeResultSet](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_FreeResultSet)!

## Funções Relacionadas

-   [DB\_Open](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_Open_Modern): Abre uma conexão com um banco de dados SQLite
-   [DB\_Close](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_Close_Modern): Fecha a conexão com um banco de dados SQLite
-   [DB\_ExecuteQuery](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_ExecuteQuery): Consulta um banco de dados SQLite
-   [DB\_FreeResultSet](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_FreeResultSet): Libera a memória do resultado de uma DB\_ExecuteQuery
-   [DB\_GetRowCount](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetRowCount): Obtém o número de linhas em um resultado
-   [DB\_SelectNextRow](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_SelectNextRow): Move para a próxima linha
-   [DB\_GetFieldCount](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldCount): Obtém o número de campos em um resultado
-   [DB\_GetFieldName](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldName): Retorna o nome de um campo em um índice específico
-   [DB\_GetFieldString](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldString): Obtém o conteúdo do campo com ID especificado da linha de resultado atual
-   [DB\_GetFieldStringByName](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldStringByName): Obtém o conteúdo do campo com nome especificado da linha de resultado atual
-   [DB\_GetFieldInt](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldInt): Obtém o conteúdo do campo como um inteiro com ID especificado da linha de resultado atual
-   [DB\_GetFieldIntByName](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldIntByName): Obtém o conteúdo do campo como um inteiro com nome especificado da linha de resultado atual
-   [DB\_GetFieldFloat](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldFloat): Obtém o conteúdo do campo como um float com ID especificado da linha de resultado atual
-   [DB\_GetFieldFloatByName](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetFieldFloatByName): Obtém o conteúdo do campo como um float com nome especificado da linha de resultado atual
-   [DB\_GetMemHandle](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetMemHandle): Obtém o handle de memória para um banco de dados SQLite que foi aberto com db\_open.
-   [DB\_GetLegacyDBResult](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetLegacyDBResult): Obtém o handle de memória para uma consulta SQLite que foi executada com DB\_ExecuteQuery.
-   [DB\_GetDatabaseConnectionCount](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetDatabaseConnectionCount): A função obtém o número de conexões de banco de dados abertas para fins de depuração.
-   [DB\_GetDatabaseResultSetCount](https://omp.itsneufox.com/pt-BR/docs/scripting/functions/DB_GetDatabaseResultSetCount): A função obtém o número de resultados de banco de dados abertos.
