> -----Original Message-----
> From: Mark Rotteveel [mailto:m...@lawinegevaar.nl] 
> Sent: Lunes, 14 de Septiembre de 2015 16:54
> 
> Personally, I'd expect the previously used transaction 
> options to be used until a new explicit set transaction is executed.

I think there's a confusion between SET commands in isql and SQL commands
that start with SET:
- isql has its own group of SET commands to control global behavior: set
count, set stats, set list, etc.
- isql has explicit provision for SET TRANSACTION, SET STATISTICS, SET
GENERATOR, SET ROLE and SET TRUSTED ROLE because these are server-side
commands and therefore passed to the server as they are, without further
parsing nor modification in isql.

Now it's easy to see why SET TRANSACTION has no memory: it's the SQL
standard way of starting a txn and isql does not get in the middle. We could
offer Begin Transaction like MsSql but when I checked it wasn't in the
standard. For example, PostgreSQL says
"SET TRANSACTION -- set the characteristics of the current transaction" and
"It has no effect on any subsequent transactions."

However, with SET TRANSACTION we not only set the characteristics: we start
the txn as the standard says and of course, there's no memory of previous
transaction options (more even considering that the server can have several
txn concurrently).

If someone wants isql to have a global default for transactions, this is
another idea.

C.


------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to