πΉ @query Operator in TuskLang - Go Guide
@query Operator in TuskLang - Go Guide
ποΈ Database Power in Your Config: @query Unleashed
TuskLang's @query
operator is pure database rebellion. We don't bow to any kingβnot even SQL. Here's how to use @query
in Go projects to inject live database data directly into your configuration.
π Table of Contents
- What is @query? - Basic Usage - Database Connections - Query Types - Go Integration - Best Practicesπ What is @query?
The @query
operator executes SQL queries and injects the results directly into your config. No more static dataβjust pure, live database power.
π οΈ Basic Usage
[stats]
user_count: @query("SELECT COUNT(*) FROM users")
active_users: @query("SELECT COUNT(*) FROM users WHERE status = 'active'")
π Database Connections
[database]
connection: "postgres://user:pass@localhost/db"
user_count: @query("SELECT COUNT(*) FROM users", connection)
π Query Types
Count Queries
[metrics]
total_users: @query("SELECT COUNT(*) FROM users")
Single Value Queries
[settings]
max_connections: @query("SELECT value FROM settings WHERE key = 'max_connections'")
JSON Queries
[config]
user_stats: @query("SELECT json_agg(u.*) FROM users u WHERE active = true")
π Go Integration
userCount := config.GetInt("user_count")
maxConnections := config.GetInt("max_connections")
Database Connection Handling
db, err := sql.Open("postgres", connectionString)
if err != nil {
log.Fatal(err)
}
defer db.Close()var count int
err = db.QueryRow("SELECT COUNT(*) FROM users").Scan(&count)
π₯ Best Practices
- Use parameterized queries for security - Cache expensive queries with @cache - Handle database connection errors gracefully - Use transactions for complex operations---
TuskLang: Your config is alive with @query.