SAVEPOINT
TransactionCreates a point within a transaction to which you can later roll back.
Syntax
SAVEPOINT name ... ROLLBACK TO SAVEPOINT name
Example
BEGIN;
INSERT INTO logs VALUES ('step 1');
SAVEPOINT sp1;
INSERT INTO logs VALUES ('step 2');
ROLLBACK TO SAVEPOINT sp1;
COMMIT;About SQL SAVEPOINT
The SAVEPOINT keyword belongs to the Transaction category of SQL statements. Creates a point within a transaction to which you can later roll back. Understanding this command is essential for any developer working with relational databases like PostgreSQL, MySQL, SQLite, or SQL Server.
SQL (Structured Query Language) is the standard language for managing and querying relational databases. The SAVEPOINT statement is supported across all major database systems, though specific syntax may vary slightly between PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, and SQLite. Always consult your database's documentation for vendor-specific features and limitations.
Best practices for using SAVEPOINT: always test queries on a development database before running them in production, use parameterized queries to prevent SQL injection, and leverage EXPLAIN to understand query performance. For complex queries, consider using CTEs (Common Table Expressions) to improve readability and maintainability.