Recommended Servers for MySQL
The world's most popular open source database
Contact a MySQL Representative
Login | Register
mysqldを使用して、--ansi スタートアップオプションでANSIモードを実行させることができます。ANSI モードでサーバを実行するのは、以下のオプションを指定してサーバを起動するのと同じことです
--ansi
--transaction-isolation=SERIALIZABLE --sql-mode=ANSI
MySQL 4.1 以降では、次の 2 つのステートメントで同じ動作を実現することができます。
SET GLOBAL TRANSACTION ISOLATION LEVEL SERIALIZABLE; SET GLOBAL sql_mode = 'ANSI';
sql_modeシステム変数値は'ANSI'に設定されることで、ANSIモードに関連するすべてのSQLモードオプションに設定されます。結果を確認するには、以下を実行します。
sql_mode
'ANSI'
mysql> SET GLOBAL sql_mode='ANSI'; mysql> SELECT @@global.sql_mode; -> 'REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI'
SET GLOBAL sql_mode='ANSI';
SELECT @@global.sql_mode;
--ansiを指定してANSIモードでサーバを実行することと、SQLモードを'ANSI'に設定することは、同じではありません。--ansiオプションはSQLモードに影響を与え、トランザクション分離レベルも設定します。SQLモードを'ANSI'に設定しても、分離レベルに影響はありません。
項4.2.2. 「コマンド オプション」および項1.8.2. 「SQLモードの選択」を参照してください。