mirror of
https://github.com/dimitri/pgloader.git
synced 2026-05-04 10:31:02 +02:00
Merge pull request #104 from nigelzor/fix-quoted-identifiers
Check for reserved keyword after downcasing
This commit is contained in:
commit
2b217a5f8f
@ -8,14 +8,13 @@
|
||||
|
||||
(defun apply-identifier-case (identifier case)
|
||||
"Return given IDENTIFIER with CASE handled to be PostgreSQL compatible."
|
||||
(let ((case
|
||||
(if (member identifier *pgsql-reserved-keywords* :test #'string=)
|
||||
:quote
|
||||
case)))
|
||||
(ecase case
|
||||
(:downcase (cl-ppcre:regex-replace-all
|
||||
"[^a-zA-Z0-9.]" (string-downcase identifier) "_"))
|
||||
(:quote (format nil "\"~a\"" identifier)))))
|
||||
(ecase case
|
||||
(:downcase (let ((lowered (cl-ppcre:regex-replace-all
|
||||
"[^a-zA-Z0-9.]" (string-downcase identifier) "_")))
|
||||
(if (member lowered *pgsql-reserved-keywords* :test #'string=)
|
||||
(format nil "\"~a\"" lowered)
|
||||
lowered)))
|
||||
(:quote (format nil "\"~a\"" identifier))))
|
||||
|
||||
;;;
|
||||
;;; Some parts of the logic here needs to be specialized depending on the
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user