This option applies
to all hosts and all
SAS/ACCESS engines. You can use it to significantly
improve CPU, input, and output performance.
When these criteria
are met, a database can process the
CREATE TABLE table-name AS
SELECT
statement in a single step instead of as three
separate statements (CREATE, SELECT, and INSERT). For example, if
multiple librefs point to different data sources, the statement is
processed normally, regardless of how you set this option. However,
when you enable it, PROC SQL sends the CREATE TABLE AS SELECT statement
to the database.
You can also send a
DELETE statement directly to the database for execution, which can
improve CPU, input, and output performance.
Once a system administrator
sets the default for this option globally, users can override it within
their own configuration file.
When you specify DBIDIRECTEXEC=,
PROC SQL can pass this statement directly to the database:
CREATE TABLE table-name AS SELECT query
Before an SQL statement
can be processed, all librefs that are associated with the statement
must reference compatible data sources. For example, a CREATE TABLE
AS SELECT statement that creates an Oracle table by selecting from
a SAS table is not sent to the database for execution because the
data sources are not compatible. The libref must also use the same
database server for all compatible data sources.