我怎样才能看到sql_mode的具体价值?
MySQL中有一些sql_mode
值:
ANSI
,
IGNORE_SPACE
,
STRICT_TRANS_TABLES
等
我怎样才能看到一个特定的价值? 手册说:
您可以通过发出SELECT @@ sql_mode语句来检索当前模式。
但是它只是不显示任何内容,只是一个表中的@@sql_mode
作为列名的空白字段。
这只是你的空白,因为你没有设置sql_mode。 如果你设置它,那么这个查询将会显示你的细节:
mysql> SELECT @@sql_mode; +------------+ | @@sql_mode | +------------+ | | +------------+ 1 row in set (0.00 sec) mysql> set sql_mode=ORACLE; Query OK, 0 rows affected (0.00 sec) mysql> SELECT @@sql_mode; +----------------------------------------------------------------------------------------------------------------------+ | @@sql_mode | +----------------------------------------------------------------------------------------------------------------------+ | PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER | +----------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)
你也可以尝试这个来确定当前的全局 sql_mode
值:
SELECT @@GLOBAL.sql_mode;
或者会话 sql_mode
值:
SELECT @@SESSION.sql_mode;
我也有这样的感觉, SQL模式确实是空的。