emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: pierre.techoueyres@free.fr (Pierre Téchoueyres)
To: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Cc: emacs-orgmode@gnu.org
Subject: Re: [PATCH] ob-sql.el: Improve Oracle connection and usage for ob-sql.
Date: Thu, 15 Mar 2018 19:34:39 +0100	[thread overview]
Message-ID: <87bmfpdw74.fsf@killashandra.ballybran.fr> (raw)
In-Reply-To: <87a7van5eq.fsf@nicolasgoaziou.fr> (Nicolas Goaziou's message of "Wed, 14 Mar 2018 14:38:37 +0100")

[-- Attachment #1: Type: text/plain, Size: 713 bytes --]

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:
Hi Nicolas,
> ...
> It looks good.
>
> I added two spaces at the end of sentences and pushed it.
> ...

I'm sorry I did a mistake in the previous patch. There is an
inconsistency between  the code in `org-babel-sql-dbstring-oracle' and
the example provided in the ORG-NEWS file.

So I attached two patches:
- the first (0001-ORG-NEWS-...) correct the example in order to match to the code,
- the second (0001-ob-sql.el...) correct the codein order to match to the example.

Personnaly I prefer the last as it match better with the habits of
thoses who uses Oracle's products (We talk almost ever in term of
database than in term of servers).

But it's up to you.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-ORG-NEWS-Correct-Oracle-connection-and-usage-for-ob.patch --]
[-- Type: text/x-patch, Size: 923 bytes --]

From e04cbea0ac40cd54f3973c3824b7c82c4d4246f3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pierre=20T=C3=A9choueyres?= <pierre.techoueyres@free.fr>
Date: Thu, 15 Mar 2018 19:20:23 +0100
Subject: [PATCH] ORG-NEWS: Correct Oracle connection and usage for ob-sql.

* etc/ORG-NEWS: match exemple with code in lisp/ob-sql.el
Use :host instead of :database in call.
---
 etc/ORG-NEWS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index 01a9361df..c19a0dfe1 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -212,7 +212,7 @@ parameters.  See example bellow.
   ,#+END_SRC
 
   or the alias defined in your TNSNAMES file
-  ,#+BEGIN_SRC sql :engine oracle :dbuser me :dbpassword my_insecure_password :database my_tns_alias
+  ,#+BEGIN_SRC sql :engine oracle :dbuser me :dbpassword my_insecure_password :host my_tns_alias
   select sysdate from dual;
   ,#+END_SRC
 #+END_SRC
-- 
2.14.3


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0001-ob-sql.el-Improve-Oracle-connection-and-usage-for-ob.patch --]
[-- Type: text/x-patch, Size: 1788 bytes --]

From fd4ae337ac3a38bc9c9a422628482d6f46599bac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pierre=20T=C3=A9choueyres?= <pierre.techoueyres@free.fr>
Date: Thu, 15 Mar 2018 19:15:14 +0100
Subject: [PATCH] ob-sql.el: Improve Oracle connection and usage for ob-sql.

* lisp/ob-sql.el (org-babel-sql-dbstring-oracle): Permit to omit host
and port to allow use of alias defined in Oracle's TNSNAMES files.
This now allow two way calling it :
<user>/<password>@<host>:<port>/<database ID>
or
<user>/<password>@<database alias>
---
 lisp/ob-sql.el | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/lisp/ob-sql.el b/lisp/ob-sql.el
index f44bf5674..d030cf528 100644
--- a/lisp/ob-sql.el
+++ b/lisp/ob-sql.el
@@ -112,10 +112,13 @@ Pass nil to omit that arg."
 
 (defun org-babel-sql-dbstring-oracle (host port user password database)
   "Make Oracle command line arguments for database connection.
-If PORT and DATABASE are nil then don't pass them.  This allows
-you to use names defined in your \"TNSNAMES\" file."
-  (concat (format "%s/%s@%s" user password host)
-	  (and port database (format ":%s/%s" port database))))
+If HOST and PORT are nil then don't pass them.  This allows
+you to use names defined in your \"TNSNAMES\" file.
+So you can connect with <user>/<password>@<host>:<port>/<database> or
+<user>/<password>@<database> using it's alias."
+  (cond ((and user password database (not (and host port))) (format "%s/%s@%s" user password database))
+	((and user password database host port) (format "%s/%s@%s:%s/%s" user password host port database))
+	(t (user-error "Missing information to connect to database."))))
 
 (defun org-babel-sql-dbstring-mssql (host user password database)
   "Make sqlcmd command line args for database connection.
-- 
2.14.3


  reply	other threads:[~2018-03-15 18:34 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-09 19:51 [PATCH] ob-sql.el: Improve Oracle connection and usage for ob-sql Pierre Téchoueyres
2018-03-13  8:19 ` Nicolas Goaziou
2018-03-13 12:10   ` pierre.techoueyres
2018-03-13 19:51   ` Pierre Téchoueyres
2018-03-14 13:38     ` Nicolas Goaziou
2018-03-15 18:34       ` Pierre Téchoueyres [this message]
2018-03-16 22:03         ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bmfpdw74.fsf@killashandra.ballybran.fr \
    --to=pierre.techoueyres@free.fr \
    --cc=emacs-orgmode@gnu.org \
    --cc=mail@nicolasgoaziou.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).