> ## Documentation Index
> Fetch the complete documentation index at: https://villagesql.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Extensões Disponíveis

> Instale e gerencie extensões do VillageSQL.

O VillageSQL vem com extensões integradas e oferece suporte a extensões oficiais criadas e mantidas pela equipe do VillageSQL. Instale qualquer uma delas com `INSTALL EXTENSION`.

## Extensões Integradas

<Warning>
  Ao compilar a partir do código-fonte, apenas `vsql_complex` e `vsql_simple` são incluídas. Para obter o conjunto completo de extensões empacotadas, use o [script de instalação](/docs/pt-BR/mysql-8.4/0.0.5/quickstart).
</Warning>

### vsql\_complex

**Status:** Integrada ao VillageSQL
**Repositório:** [villagesql-server/villagesql/examples/vsql-complex](https://github.com/villagesql/villagesql-server/tree/main/villagesql/examples/vsql-complex)

Tipo de dados de número complexo com suporte aritmético completo para engenharia elétrica, processamento de sinais e computação científica.

**Recursos:**

* Tipo de coluna `COMPLEX` para armazenar números complexos (a + bi)
* Formato de literal de string: `'(real,imaginary)'` (por exemplo, `'(3.0,4.0)'`)
* Aritmética: adição, subtração, multiplicação, divisão
* Utilitários: `complex_real()`, `complex_imag()`, `complex_abs()`, `complex_conjugate()`
* Armazenamento binário: 16 bytes (2 doubles)

**Instalação:**

```sql theme={null}
INSTALL EXTENSION vsql_complex;
```

**Exemplo:**

```sql theme={null}
CREATE TABLE signals (
    id INT PRIMARY KEY,
    impedance COMPLEX,
    frequency_response COMPLEX
);

INSERT INTO signals VALUES
    (1, '(50.0,0.0)', '(0.95,0.31)');

SELECT
    complex_abs(impedance) as magnitude,
    complex_add(impedance, frequency_response) as total
FROM signals;
```

## Extensões Principais

As extensões a seguir são mantidas em repositórios separados e precisam ser compiladas e instaladas separadamente. Cada uma fornece suas próprias instruções de instalação e documentação.

### vsql\_ai

**Repositório:** [villagesql/vsql-ai](https://github.com/villagesql/vsql-ai)

Funções SQL com inteligência artificial. Funções de prompting e de embedding de IA para consultas SQL. Oferece suporte a Anthropic Claude, Google Gemini, OpenAI e Ollama local.

### vsql\_crypto

**Repositório:** [villagesql/vsql-crypto](https://github.com/villagesql/vsql-crypto)

Funções criptográficas. Hashing (MD5, SHA-1, SHA-256, SHA-512 e mais), HMAC, criptografia AES, hashing de senhas e geração segura de dados aleatórios usando OpenSSL.

### vsql\_cube

**Repositório:** [villagesql/vsql-cube](https://github.com/villagesql/vsql-cube)

Tipo de caixa e ponto N-dimensional. Armazene e consulte caixas e pontos geométricos em até 100 dimensões, com funções de construtor, acessor, predicado, distância e geometria. Requer o VillageSQL 0.0.4.

### vsql\_http

**Repositório:** [villagesql/vsql-http](https://github.com/villagesql/vsql-http)

Funções de cliente HTTP. Faça requisições HTTP a partir de consultas SQL (GET, POST, PUT, DELETE, PATCH) com respostas JSON, além de codificação e decodificação de URL.

### vsql\_network\_address

**Repositório:** [villagesql/vsql-network-address](https://github.com/villagesql/vsql-network-address)

Tipos de endereço de rede. Tipos de dados de endereço IPv4, IPv6 e MAC com validação, comparação e operações de rede.

### vsql\_uuid

**Repositório:** [villagesql/vsql-uuid](https://github.com/villagesql/vsql-uuid)

Tipo de dados e funções de UUID. Gere e trabalhe com UUIDs nativamente em SQL (v1, v3, v4, v5, v6 e v7) com um tipo UUID nativo de 16 bytes, extração de timestamp e comparação.

### vsql\_boolean

**Repositório:** [villagesql/vsql-boolean](https://github.com/villagesql/vsql-boolean)

Tipo booleano real. Um verdadeiro tipo de coluna `STRICTBOOL` com valores de verdade padrão (`true`/`false`, `yes`/`no`, `on`/`off`, `1`/`0`), armazenamento de 1 byte e semântica correta de dump/restore. Inclui os agregados `boolean_sum()`, que retorna a contagem de valores `TRUE` em um grupo como um `INT`, e `boolean_avg()`, que retorna a fração de valores `TRUE` (contagem de true ÷ contagem de não nulos) como um `REAL`. Ambos ignoram `NULL`s; `boolean_avg()` retorna `NULL` para um grupo vazio.

### vsql\_rest

**Repositório:** [villagesql/vsql-rest](https://github.com/villagesql/vsql-rest)

Servidor de API REST. Exponha tabelas do banco de dados como endpoints HTTP/HTTPS ao vivo — sem necessidade de código. Configure com `SET GLOBAL`, consulte tabelas usando filtros de URL e chame funções armazenadas via `/rpc/`.

### vsql\_trgm

**Repositório:** [villagesql/vsql-trgm](https://github.com/villagesql/vsql-trgm)

Busca de similaridade de texto baseada em trigramas. Port do `pg_trgm` do PostgreSQL. Calcule pontuações de similaridade entre strings, encontre correspondências aproximadas em uma coluna e meça a similaridade em nível de palavra — tudo a partir do SQL. Requer o VillageSQL 0.0.4.

### vsql\_fuzzystrmatch

**Repositório:** [villagesql/vsql-fuzzystrmatch](https://github.com/villagesql/vsql-fuzzystrmatch)

Funções de correspondência aproximada de strings. Port do `fuzzystrmatch` do PostgreSQL. Códigos fonéticos Soundex, distância de edição de Levenshtein (com custos configuráveis e limite de saída antecipada), Metaphone e Double Metaphone — para correspondência de nomes, correção ortográfica e deduplicação fonética. Requer o VillageSQL 0.0.4.

## Extensões da Comunidade

Extensões da comunidade são criadas por terceiros usando o VillageSQL Extension Framework (VEF). Elas não são mantidas pela equipe do VillageSQL.

### vsql\_statistics

**Repositório:** [ronaldbradford/vsql-statistics](https://github.com/ronaldbradford/vsql-statistics)
**Mantenedor:** [Ronald Bradford](https://github.com/ronaldbradford)

Funções de agregação estatística para análise de dados. IQR, quartis, mediana e detecção de outliers pelos limites de Tukey — `STATS_IQR`, `STATS_Q1`, `STATS_Q3`, `STATS_MEDIAN`, `STATS_IQR_LOWER_FENCE`, `STATS_IQR_UPPER_FENCE`. Requer o VillageSQL 0.0.4.

### prometheus\_exporter

**Repositório:** [ProxySQL/vsql-prometheus-exporter](https://github.com/ProxySQL/vsql-prometheus-exporter)
**Mantenedor:** [ProxySQL](https://github.com/ProxySQL)

Exportador embutido de métricas do Prometheus. Expõe métricas do servidor MySQL em um endpoint HTTP `/metrics` no formato de exposição do Prometheus — status global, variáveis globais, métricas do InnoDB e status de replicação.

### vsql\_luhn

**Repositório:** [intojhanurag/vsql-luhn](https://github.com/intojhanurag/vsql-luhn)
**Mantenedor:** [intojhanurag](https://github.com/intojhanurag)

Validador do algoritmo de Luhn e gerador de dígito verificador. Valide números de cartão de crédito, códigos IMEI, SINs canadenses e outros identificadores do setor com `luhn_valid()`, e gere dígitos verificadores corretos com `luhn_checkdigit()`.

### vsql\_nanoid

**Repositório:** [intojhanurag/vsql-nanoid](https://github.com/intojhanurag/vsql-nanoid)
**Mantenedor:** [intojhanurag](https://github.com/intojhanurag)

Gerador de NanoID para identificadores únicos curtos e seguros para URL. `nanoid()` retorna um ID de 21 caracteres; `nanoid_with(size[, alphabet])` personaliza o comprimento e o conjunto de caracteres. Usa uma fonte aleatória criptograficamente segura.

### vsql\_slugify

**Repositório:** [intojhanurag/vsql-slugify](https://github.com/intojhanurag/vsql-slugify)
**Mantenedor:** [intojhanurag](https://github.com/intojhanurag)

Gera slugs seguros para URL a partir de texto arbitrário — removendo acentos, convertendo para minúsculas, reduzindo caracteres não alfanuméricos a um único separador e removendo separadores no início e no fim.
