PRB: SELECT INTO Fails Inside a User-Defined Transaction

ID Number: Q67874

1.00 1.10 1.11 4.20

OS/2

Summary:

SYMPTOMS

The following message is received when a SELECT INTO is used inside

a user-defined transaction:

SELECT INTO command not allowed within multi-statement transaction.

CAUSE

The SELECT INTO command is a nonlogged operation and is not allowed

inside a user-defined transaction (BEGIN TRAN ... COMMIT TRAN).

WORKAROUND

If it is necessary to associate a table created with a SELECT INTO

to a transaction, you can use the following method:

1. Create the table outside the user-defined transaction.

2. If the transaction fails, set the global variable @@error and

roll back the transaction.

3. Outside the transaction, check for the value of @@error and

drop the table if this value is set.

Additional reference words: 1.00 1.10 1.11 4.20 Transact-SQL