Je souhaite utiliser l'interface JDBC de Clojure pour mettre à jour une base de données Hive. En particulier, je veux ajouter des partitions. Le code serait comme suit:Comment désactiver l'autocommit dans JDBC en utilisant clojure
(jdbc/db-do-commands hive-db ["ALTER TABLE foo ADD PARTITION (year=2015, month=10, day=1, hour=1) LOCATION '/bar'"])
Cependant, je reçois une erreur:
java.sql.SQLException: enabling autocommit is not supported
at org.apache.hive.jdbc.HiveConnection.setAutoCommit (HiveConnection.java:1071)
clojure.java.jdbc$db_transaction_STAR_.doInvoke (jdbc.clj:605)
clojure.lang.RestFn.invoke (RestFn.java:425)
...
que je sache, ce qui permet la validation automatique dans le pilote JDBC de Ruche a severalissues sans solution actuellement. Je veux donc désactiver l'autocommit. Comment cela se fait-il en clojure.java.jdbc
?
Merci - J'ai trouvé une solution de contournement qui ressemble à ce que vous avez écrit. – Sh4pe