Подтвердить что ты не робот

Как я могу увидеть конкретное значение sql_mode?

В MySQL есть несколько значений sql_mode:

ANSI,

IGNORE_SPACE,

STRICT_TRANS_TABLES и т.д.

Как я могу увидеть одно конкретное значение? В руководстве написано:

Вы можете получить текущий режим, выпустив SELECT @@sql_mode утверждение.

Но он ничего не показывает, только одно пустое поле в таблице с @@sql_mode в качестве имени столбца.

4b9b3361

Ответ 1

Это просто для вас, потому что вы не установили 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)

Ответ 2

Вы также можете попробовать это, чтобы определить текущее глобальное значение sql_mode:

SELECT @@GLOBAL.sql_mode;

или session sql_mode значение:

SELECT @@SESSION.sql_mode;

У меня также было ощущение, что режим SQL действительно пуст.