# dbPrepareString (Servidor)

> Preenche os marcadores de um SQL com valores escapados, sem executá-lo.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Função Lua
- **Lado**: Servidor
- **Categoria**: Banco de dados
- **URL**: https://wiki.mymp.gg/pt/dbPrepareString

## Sintaxe

```lua
string|false dbPrepareString(element connection, string sql, any ...)
```

## Parâmetros

| Nome | Tipo | Descrição |
| --- | --- | --- |
| `connection` | `element` | Uma conexão de `dbConnect`. |
| `sql` | `string` | O comando SQL, com `?` e `??` como marcadores. |
| `...` | `any` | Os valores dos marcadores: textos, números, booleanos ou `nil`. |

## Retorno

O SQL pronto, ou `false` se o número de valores não bate com o de marcadores.

### Marcadores

- `?` recebe o próximo valor, já escapado: `nil` vira `NULL`, booleanos viram `1` ou `0` e textos ficam entre aspas.
- `??` recebe um texto como identificador escapado de tabela ou coluna.
- O número de valores precisa ser igual ao de marcadores.

## Exemplo

```lua
local where = dbPrepareString(db, "WHERE ?? = ?", "account", accountId)
dbExec(db, "DELETE FROM players " .. where)
```

## Veja também

- [dbExec (Servidor)](https://wiki.mymp.gg/pt/dbExec.md): Executa um comando SQL sem esperar resposta.
- [dbQuery (Servidor)](https://wiki.mymp.gg/pt/dbQuery.md): Envia uma consulta SQL cuja resposta é lida depois com dbPoll.
