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.
VillageSQL ships with built-in extensions and supports official extensions built and maintained by the VillageSQL team. Install any of them with INSTALL EXTENSION.
Built-in Extensions
When building from source, only vsql_complex and vsql_simple are included. The official extensions below are maintained in separate repositories.
vsql_complex
Status: Built-in with VillageSQL
Repository: villagesql-server/villagesql/examples/vsql-complex
Complex number data type with full arithmetic support for electrical engineering, signal processing, and scientific computing.
Features:
COMPLEX column type for storing complex numbers (a + bi)
- String literal format:
'(real,imaginary)' (e.g., '(3.0,4.0)')
- Arithmetic: add, subtract, multiply, divide
- Utilities:
complex_real(), complex_imag(), complex_abs(), complex_conjugate()
- Binary storage: 16 bytes (2 doubles)
Installation:
INSTALL EXTENSION vsql_complex;
Example:
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;
Core Extensions
The following extensions are maintained in separate repositories and must be built and installed separately. Each provides its own installation instructions and documentation.
vsql_ai
Repository: villagesql/vsql-ai
AI-powered SQL functions. AI prompting and embedding functions for SQL queries. Supports Anthropic Claude, Google Gemini, OpenAI, and local Ollama.
vsql_crypto
Repository: villagesql/vsql-crypto
Cryptographic functions. Hashing (MD5, SHA-1, SHA-256, SHA-512, and more), HMAC, AES encryption, password hashing, and secure random data generation using OpenSSL.
vsql_cube
Repository: villagesql/vsql-cube
N-dimensional box and point type. Store and query geometric boxes and points across up to 100 dimensions, with constructor, accessor, predicate, distance, and geometry functions. Requires VillageSQL 0.0.4.
vsql_http
Repository: villagesql/vsql-http
HTTP client functions. Make HTTP requests from SQL queries — GET, POST, PUT, DELETE, PATCH — with JSON responses, plus URL encoding and decoding.
vsql_network_address
Repository: villagesql/vsql-network-address
Network address types. IPv4, IPv6, and MAC address data types with validation, comparison, and network operations.
vsql_uuid
Repository: villagesql/vsql-uuid
UUID data type and functions. Generate and work with UUIDs natively in SQL — v1, v3, v4, v5, v6, and v7 — with a native 16-byte UUID type, timestamp extraction, and comparison.