From ddace051205d20b24c047962ca9d1335bdd90284 Mon Sep 17 00:00:00 2001 From: Daniel Kraus Date: Mon, 16 Jan 2023 11:35:02 +0100 Subject: [PATCH] lisp/ob-sql.el: Add support for Athena * lisp/ob-sql.el (org-babel-execute:sql): Add support for Athena --- lisp/ob-sql.el | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lisp/ob-sql.el b/lisp/ob-sql.el index 39a4573a5..640ecb2c0 100644 --- a/lisp/ob-sql.el +++ b/lisp/ob-sql.el @@ -53,14 +53,15 @@ ;; - rowname-names ;; ;; Engines supported: -;; - mysql +;; - athena ;; - dbi ;; - mssql -;; - sqsh -;; - postgresql (postgres) +;; - mysql ;; - oracle -;; - vertica +;; - postgresql (postgres) ;; - saphana +;; - sqsh +;; - vertica ;; ;; TODO: ;; @@ -254,6 +255,11 @@ This function is called by `org-babel-execute-src-block'." (org-babel-temp-file "sql-out-"))) (header-delim "") (command (cl-case (intern engine) + (athena (format "athenacli %s -e %s %s > %s" + (or cmdline "") + (org-babel-process-file-name in-file) + database + (org-babel-process-file-name out-file))) (dbi (format "dbish --batch %s < %s | sed '%s' > %s" (or cmdline "") (org-babel-process-file-name in-file) @@ -352,7 +358,7 @@ SET COLSEP '|' (progn (insert-file-contents-literally out-file) (buffer-string))) (with-temp-buffer (cond - ((memq (intern engine) '(dbi mysql postgresql postgres saphana sqsh vertica)) + ((memq (intern engine) '(athena dbi mysql postgresql postgres saphana sqsh vertica)) ;; Add header row delimiter after column-names header in first line (cond (colnames-p @@ -377,7 +383,7 @@ SET COLSEP '|' (goto-char (point-max)) (forward-char -1)) (write-file out-file)))) - (org-table-import out-file (if (string= engine "sqsh") '(4) '(16))) + (org-table-import out-file (if (memq (intern engine) '(athena sqsh)) '(4) '(16))) (org-babel-reassemble-table (mapcar (lambda (x) (if (string= (car x) header-delim) -- 2.39.0