Spec-Zone .ru
спецификации, руководства, описания, API
|
You can tell mysqld to run in ANSI mode with the --ansi
startup option. Running the server in ANSI mode is the same as starting it
with the following options:
--transaction-isolation=SERIALIZABLE --sql-mode=ANSI
You can achieve the same effect at runtime by executing these two statements:
SET GLOBAL TRANSACTION ISOLATION LEVEL SERIALIZABLE;SET GLOBAL sql_mode = 'ANSI';
You can see that setting the sql_mode
system variable to 'ANSI'
enables all SQL
mode options that are relevant for ANSI mode as follows:
mysql>SET GLOBAL sql_mode='ANSI';
mysql>SELECT @@global.sql_mode;
-> 'REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI'
Running the server in ANSI mode with --ansi
is not quite the same as setting the SQL mode to 'ANSI'
.
The --ansi
option affects the SQL mode and also sets the transaction isolation level. Setting the SQL mode to 'ANSI'
has no effect on the isolation level.
See Section 5.1.3, "Server Command Options", and Section 1.8.2, "Selecting SQL Modes".