8080(require 'sql )
8181
8282(defvar sql-connection-alist )
83-
83+ (defvar org-sql-session-start-time )
84+ (defvar org-sql-session-command-terminated nil )
8485(defvar org-sql-session-preamble
8586 (list 'postgres " \\ set ON_ERROR_STOP 1
8687\\ pset footer off
8788\\ pset pager off
8889\\ pset format unaligned" )
8990 " Command preamble to run upon shell start." )
91+ (defvar org-sql-session--batch-terminate " ---#" " To print at the end of a command batch." )
9092(defvar ob-sql-batch-terminate
9193 (list 'sqlite (format " .print %s \n " org-sql-session--batch-terminate)
9294 'postgres (format " \\ echo %s \n " org-sql-session--batch-terminate))
99101 (list 'postgres '((" PGPASSWORD" sql-password))))
100102(defvar org-sql-session-clean-output nil
101103 " Store the regexp used to clear output (prompt1|termination|prompt2)." )
102- (defvar org-sql-session-start-time )
103- (defvar org-sql-session-command-terminated nil )
104- (defvar org-sql-session--batch-terminate " ---#" " To print at the end of a command batch." )
105104
106105(declare-function org-table-import " org-table" (file arg))
107106(declare-function orgtbl-to-csv " org-table" (table params))
117116 :group 'org-babel-sql
118117 :safe t )
119118
120- (defcustom org-sql-run-comint-p 'nil
119+ (defcustom org-babel- sql-run-comint-p 'nil
121120 " Run non-session SQL commands through comoint (or command line if nil)."
122121 :type '(boolean)
123122 :group 'org-babel-sql
124123 :safe t )
125124
126- (defcustom org-sql-timeout '5 .0
125+ (defcustom org-babel- sql-timeout '5 .0
127126 " Abort on timeout."
128127 :type '(number)
129128 :group 'org-babel-sql
130129 :safe t )
131130
132- (defcustom org-sql-close-out-temp-buffer-p 'nil
131+ (defcustom org-babel- sql-close-out-temp-buffer-p 'nil
133132 " Close sql-out-temp buffer."
134133 :type '(boolean)
135134 :group 'org-babel-sql
146145 (out-file . :any ))
147146 " Header arguments accepted." )
148147
149- (defun org-sql-dbstring-mysql (host port user password database )
148+ (defun org-babel- sql-dbstring-mysql (host port user password database )
150149 " Make MySQL command line arguments for database connection.
151150nil arguments are ommited."
152151 (mapconcat
@@ -159,7 +158,7 @@ nil arguments are ommited."
159158 (when database (concat " -D" (shell-quote-argument database)))))
160159 " " ))
161160
162- (defun org-sql-dbstring-postgresql (host port user database )
161+ (defun org-babel- sql-dbstring-postgresql (host port user database )
163162 " Make PostgreSQL command line arguments for database connection.
164163nil arguments are ommited."
165164 (mapconcat
@@ -171,7 +170,7 @@ nil arguments are ommited."
171170 (when database (concat " -d" (shell-quote-argument database)))))
172171 " " ))
173172
174- (defun org-sql-dbstring-oracle (host port user password database )
173+ (defun org-babel- sql-dbstring-oracle (host port user password database )
175174 " Make Oracle command line arguments for database connection.
176175If HOST and PORT are nil then don't pass them. This allows you
177176to use names defined in your \" TNSNAMES\" file. So you can
@@ -187,7 +186,7 @@ or <user>/<password>@<database> using its alias."
187186 (format " %s /%s @%s " user password database))
188187 (t (user-error " Missing information to connect to database" ))))
189188
190- (defun org-sql-dbstring-mssql (host user password database )
189+ (defun org-babel- sql-dbstring-mssql (host user password database )
191190 " Make sqlcmd command line args for database connection.
192191`sqlcmd' is the preferred command line tool to access Microsoft
193192SQL Server on Windows and Linux platform."
@@ -200,7 +199,7 @@ SQL Server on Windows and Linux platform."
200199 (when database (format " -d \" %s \" " (shell-quote-argument database)))))
201200 " " ))
202201
203- (defun org-sql-dbstring-sqsh (host user password database )
202+ (defun org-babel- sql-dbstring-sqsh (host user password database )
204203 " Make sqsh command line args for database connection.
205204sqsh is one method to access Sybase or MS SQL via Linux platform."
206205 (mapconcat
@@ -212,7 +211,7 @@ sqsh is one method to access Sybase or MS SQL via Linux platform."
212211 (when database (format " -D \" %s \" " (shell-quote-argument database)))))
213212 " " ))
214213
215- (defun org-sql-dbstring-vertica (host port user password database )
214+ (defun org-babel- sql-dbstring-vertica (host port user password database )
216215 " Make Vertica command line args for database connection.
217216nil arguments are ommited."
218217 (mapconcat
@@ -225,7 +224,7 @@ nil arguments are ommited."
225224 (when database (format " -d %s " (shell-quote-argument database)))))
226225 " " ))
227226
228- (defun org-sql-dbstring-saphana (host port instance user password database )
227+ (defun org-babel- sql-dbstring-saphana (host port instance user password database )
229228 " Make SAP HANA command line args for database connection.
230229nil arguments are ommited."
231230 (mapconcat
@@ -239,7 +238,7 @@ nil arguments are ommited."
239238 (and database (format " -d %s " (shell-quote-argument database)))))
240239 " " ))
241240
242- (defun org-sql-convert-standard-filename (file )
241+ (defun org-babel- sql-convert-standard-filename (file )
243242 " Convert FILE to OS standard file name.
244243If in Cygwin environment, uses Cygwin specific function to
245244convert the file name. In a Windows-NT environment, do nothing.
@@ -289,10 +288,10 @@ This function is called by `org-babel-execute-src-block'."
289288 (session-p (not (string= session " none" )))
290289 (header-delim " " ))
291290
292- (if (or session-p org-sql-run-comint-p)
291+ (if (or session-p org-babel- sql-run-comint-p)
293292 ; ; run through comint
294293 (let ((sql--buffer
295- (org-sql-session-connect in-engine params session)))
294+ (org-babel- sql-session-connect in-engine params session)))
296295 (with-current-buffer (get-buffer-create " *ob-sql-result*" )
297296 (erase-buffer ))
298297 (setq org-sql-session-start-time (current-time ))
@@ -346,14 +345,14 @@ This function is called by `org-babel-execute-src-block'."
346345 (org-babel-process-file-name out-file)))
347346 (mssql (format " sqlcmd %s -s \"\t\" %s -i %s -o %s "
348347 (or cmdline " " )
349- (org-sql-dbstring-mssql
348+ (org-babel- sql-dbstring-mssql
350349 dbhost dbuser dbpassword database)
351- (org-sql-convert-standard-filename
350+ (org-babel- sql-convert-standard-filename
352351 (org-babel-process-file-name in-file))
353- (org-sql-convert-standard-filename
352+ (org-babel- sql-convert-standard-filename
354353 (org-babel-process-file-name out-file))))
355354 ((mysql mariadb) (format " mysql %s %s %s < %s > %s "
356- (org-sql-dbstring-mysql
355+ (org-babel- sql-dbstring-mysql
357356 dbhost dbport dbuser dbpassword database)
358357 (if colnames-p " " " -N" )
359358 (or cmdline " " )
@@ -370,33 +369,33 @@ footer=off -F \"\t\" %s -f %s -o %s %s"
370369 sql-postgres-program)
371370 " psql" )
372371 (if colnames-p " " " -t" )
373- (org-sql-dbstring-postgresql
372+ (org-babel- sql-dbstring-postgresql
374373 dbhost dbport dbuser database)
375374 (org-babel-process-file-name in-file)
376375 (org-babel-process-file-name out-file)
377376 (or cmdline " " )))
378377 (sqsh (format " sqsh %s %s -i %s -o %s -m csv "
379378 (or cmdline " " )
380- (org-sql-dbstring-sqsh
379+ (org-babel- sql-dbstring-sqsh
381380 dbhost dbuser dbpassword database)
382- (org-sql-convert-standard-filename
381+ (org-babel- sql-convert-standard-filename
383382 (org-babel-process-file-name in-file))
384- (org-sql-convert-standard-filename
383+ (org-babel- sql-convert-standard-filename
385384 (org-babel-process-file-name out-file))))
386385 (vertica (format " vsql %s -f %s -o %s %s "
387- (org-sql-dbstring-vertica
386+ (org-babel- sql-dbstring-vertica
388387 dbhost dbport dbuser dbpassword database)
389388 (org-babel-process-file-name in-file)
390389 (org-babel-process-file-name out-file)
391390 (or cmdline " " )))
392391 (oracle (format
393392 " sqlplus -s %s < %s > %s"
394- (org-sql-dbstring-oracle
393+ (org-babel- sql-dbstring-oracle
395394 dbhost dbport dbuser dbpassword database)
396395 (org-babel-process-file-name in-file)
397396 (org-babel-process-file-name out-file)))
398397 (saphana (format " hdbsql %s -I %s -o %s %s "
399- (org-sql-dbstring-saphana
398+ (org-babel- sql-dbstring-saphana
400399 dbhost dbport dbinstance dbuser dbpassword database)
401400 (org-babel-process-file-name in-file)
402401 (org-babel-process-file-name out-file)
@@ -472,7 +471,7 @@ SET COLSEP '|'
472471 (replace-match " " )))
473472
474473 (org-table-import out-file (if (string= engine " sqsh" ) '(4 ) '(16 )))
475- (when org-sql-close-out-temp-buffer-p
474+ (when org-babel- sql-close-out-temp-buffer-p
476475 (kill-buffer (get-file-buffer out-file)))
477476 (org-babel-reassemble-table
478477 (mapcar (lambda (x )
@@ -498,12 +497,12 @@ the :engine header argument provided in INFO."
498497 (epilogue (cdr (assq :epilogue params))))
499498 (mapconcat 'identity
500499 (delq nil (list prologue
501- (org-sql-expand-vars
500+ (org-babel- sql-expand-vars
502501 body (org-babel--get-vars params))
503502 epilogue))
504503 " \n " )))
505504
506- (defun org-sql-expand-vars (body vars &optional sqlite )
505+ (defun org-babel- sql-expand-vars (body vars &optional sqlite )
507506 " Expand the variables held in VARS in BODY.
508507
509508If SQLITE has been provided, prevent passing a format to
@@ -524,15 +523,15 @@ argument mechanism."
524523 val (if sqlite
525524 nil
526525 '(:fmt (lambda (el ) (if (stringp el)
527- el
528- (format " %S " el))))))))
526+ el
527+ (format " %S " el))))))))
529528 data-file)
530529 (if (stringp val) val (format " %S " val))))
531530 body t t )))
532531 vars)
533532 body)
534533
535- (defun org-sql-session-connect (in-engine params session )
534+ (defun org-babel- sql-session-connect (in-engine params session )
536535 " Start the SQL client of IN-ENGINE if it has not.
537536PARAMS provides the sql connection parameters for a new or
538537existing SESSION. Clear the intermediate buffer from previous
@@ -675,7 +674,7 @@ should also be prompted."
675674 (setq rpt (sql-make-progress-reporter nil " Login" ))
676675 (with-current-buffer sql-buffer
677676 (let ((proc (get-buffer-process sqli-buffer))
678- (secs org-sql-timeout)
677+ (secs org-babel- sql-timeout)
679678 (step 0.2 ))
680679 (while (and proc
681680 (memq (process-status proc) '(open run))
@@ -738,7 +737,7 @@ its message buffer"
738737 (> (time-to-seconds
739738 (time-subtract (current-time )
740739 org-sql-session-start-time))
741- org-sql-timeout))
740+ org-babel- sql-timeout))
742741 (setq org-sql-session-command-terminated t ))
743742
744743 (with-current-buffer (get-buffer-create " *ob-sql-result*" )
0 commit comments