Не могу изменить sql_mode при подключении к MySQL из Clojure.
Простейший проект project.clj
(defproject test-project "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.6.0"]
[org.clojure/java.jdbc "0.3.7"]
[mysql/mysql-connector-java "5.1.35"]]
)
Дальше у меня есть src/test_project/core.clj
(ns test-project.core
(:require [clojure.java.jdbc :as j]))
(def mysql-db {:subprotocol "mysql"
:subname "//127.0.0.1:3306/dbname?zeroDateTimeBehavior=convertToNull&sessionVariables=sql_mode=''"
:user "root"
:password "1234"})
(j/execute! mysql-db ["set session sql_mode=''"])
(j/query mysql-db ["select @@SESSION.sql_mode"])
Запускаю все строки по очереди нажатием ctrl+enter в LightTable.
Цель - изменить sql_mode на пустое значение, чтобы MySQL не требовал явного указания default значений при вставке строк (многие поля во многих таблицах в базе не имеют default значений и менять схему базы не вариант).
После запуска в REPL всех строк, рядом с последней строкой в LightTable вижу результат:
({:@@session.sql_mode "STRICT_TRANS_TABLES"})
sql_mode так и не поменялся на пустой :(
Как поменять?