The world's most popular open source database
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'
Note that 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.2, “Server Command Options”, and Section 1.7.2, “Selecting SQL Modes”.


User Comments
Note that you would also need to use the NO_BACKSLASH_ESCAPES option to truly be more ANSI like..
Add your own comment.