AUTOCOMMIT= LIBNAME Statement Option

Indicates whether updates are committed immediately after they are submitted.

Valid in: SAS/ACCESS LIBNAME statement
Category: Data Set Control
Default: operation-specific [Aster, Greenplum, HAWQ, SAP IQ]
data source-specific [ODBC , OLE DB]
NO [if you are using the SAS/ACCESS LIBNAME statement, the data source provider supports transactions, and the connection is to update data]
NO [for updates and the main LIBNAME connection for Netezza]
NO [DB2 under UNIX and PC Hosts, Microsoft SQL Server, PostgreSQL, SAP HANA, Vertica, Yellowbrick]
YES [for PROC PRINT, Read-only connections, and the SQL pass-through facility]
YES [Amazon Redshift, Informix, MySQL, SAP ASE, Snowflake]
Data source: Amazon Redshift, Aster, DB2 under UNIX and PC Hosts, Greenplum, HAWQ, Informix, Microsoft SQL Server, MySQL, Netezza, ODBC, OLE DB, PostgreSQL, SAP ASE, SAP HANA, SAP IQ, Snowflake, Vertica, Yellowbrick
Notes: Support for Yellowbrick was added in SAS 9.4M7.
The default value for Snowflake changed from NO to YES in the March 2024 release of SAS/ACCESS on SAS 9.4M8.
See: AUTOCOMMIT= data set option

Table of Contents

Syntax

AUTOCOMMIT=YES | NO

Syntax Description

YES

specifies that all updates, deletes, and inserts are committed (that is, saved to a table) immediately after they are submitted, and no rollback is possible.

NO

specifies that the SAS/ACCESS engine automatically performs the commit when it reaches the DBCOMMIT= value, or the default number of rows if DBCOMMIT= is not set.

CAUTION

For Amazon Redshift, use caution when specifying AUTOCOMMIT=NO with Insert or Update operations. When AUTOCOMMIT=NO and an error occurs, Amazon Redshift automatically discards any changes that have not been committed. In this situation, the number of inserted rows that is reported might be incorrect.

Last updated: February 3, 2026