Execute SQL Statement (Write Operations)
pg_executeExecute non-SELECT SQL statements such as INSERT, UPDATE, DELETE, or DDL commands. Requires explicit confirmation for destructive operations like DROP or DELETE without WHERE.
Instructions
Execute a non-SELECT SQL statement: INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, etc.
For DROP, TRUNCATE, or DELETE without a WHERE clause, you must set confirm_destructive: true to confirm you understand these operations are irreversible.
Args:
sql: SQL statement to execute (required)
confirm_destructive: Required for DROP/TRUNCATE/DELETE without WHERE (default: false)
timeout_ms: Statement timeout in milliseconds (default: 30000)
Returns: JSON: { command, rows_affected, duration_ms } Markdown: summary of executed statement
Examples:
INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com')
UPDATE orders SET status = 'shipped' WHERE id = 42
CREATE INDEX idx_users_email ON users(email)
DROP TABLE temp_data (requires confirm_destructive: true)
Warning: Mutations are not automatically wrapped in a transaction. Use BEGIN/COMMIT explicitly for multi-statement transactions.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sql | Yes | SQL statement to execute | |
| confirm_destructive | No | Set true to confirm DROP/TRUNCATE/DELETE-without-WHERE operations | |
| timeout_ms | No | Statement timeout in milliseconds |