summaryrefslogtreecommitdiff
path: root/lisp/org/ob-sql.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/org/ob-sql.el')
-rw-r--r--lisp/org/ob-sql.el31
1 files changed, 18 insertions, 13 deletions
diff --git a/lisp/org/ob-sql.el b/lisp/org/ob-sql.el
index 5f7c0de0000..9f4fa1d7863 100644
--- a/lisp/org/ob-sql.el
+++ b/lisp/org/ob-sql.el
@@ -3,8 +3,9 @@
;; Copyright (C) 2009-2022 Free Software Foundation, Inc.
;; Author: Eric Schulte
+;; Maintainer: Daniel Kraus <daniel@kraus.my>
;; Keywords: literate programming, reproducible research
-;; Homepage: https://orgmode.org
+;; URL: https://orgmode.org
;; This file is part of GNU Emacs.
@@ -69,6 +70,10 @@
;;
;;; Code:
+
+(require 'org-macs)
+(org-assert-version)
+
(require 'ob)
(declare-function org-table-import "org-table" (file arg))
@@ -218,18 +223,18 @@ then look for the parameter into the corresponding connection
defined in `sql-connection-alist', otherwise look into PARAMS.
See `sql-connection-alist' (part of SQL mode) for how to define
database connections."
- (if (assq :dbconnection params)
- (let* ((dbconnection (cdr (assq :dbconnection params)))
- (name-mapping '((:dbhost . sql-server)
- (:dbport . sql-port)
- (:dbuser . sql-user)
- (:dbpassword . sql-password)
- (:dbinstance . sql-dbinstance)
- (:database . sql-database)))
- (mapped-name (cdr (assq name name-mapping))))
- (cadr (assq mapped-name
- (cdr (assoc dbconnection sql-connection-alist)))))
- (cdr (assq name params))))
+ (or (cdr (assq name params))
+ (and (assq :dbconnection params)
+ (let* ((dbconnection (cdr (assq :dbconnection params)))
+ (name-mapping '((:dbhost . sql-server)
+ (:dbport . sql-port)
+ (:dbuser . sql-user)
+ (:dbpassword . sql-password)
+ (:dbinstance . sql-dbinstance)
+ (:database . sql-database)))
+ (mapped-name (cdr (assq name name-mapping))))
+ (cadr (assq mapped-name
+ (cdr (assoc dbconnection sql-connection-alist))))))))
(defun org-babel-execute:sql (body params)
"Execute a block of Sql code with Babel.