execute_query_handler

Function execute_query_handler 

Source
pub async fn execute_query_handler<DB: DatabaseProvider>(
    __arg0: State<Arc<DB>>,
    __arg1: Json<QueryRequest>,
) -> Response
Expand description

Handler for POST /api/query

Executes a raw SQL query and returns the results.

§Security Warning

This endpoint allows executing ANY SQL statement including INSERT, UPDATE, DELETE. It should only be used in development environments!

Request body:

{
  "sql": "SELECT * FROM users LIMIT 10"
}

Response (successful SELECT):

{
  "columns": ["id", "name", "email"],
  "rows": [...],
  "affectedRows": 0,
  "executionTimeMilliseconds": 12,
  "error": null
}

Response (successful INSERT/UPDATE/DELETE):

{
  "columns": [],
  "rows": [],
  "affectedRows": 5,
  "executionTimeMilliseconds": 8,
  "error": null
}

Response (error):

{
  "columns": [],
  "rows": [],
  "affectedRows": 0,
  "executionTimeMilliseconds": 0,
  "error": "near \"SELCT\": syntax error"
}

§Arguments

  • database - Database provider from state
  • request - JSON request containing SQL query to execute

§Returns

JSON response containing query results or error information