Регистр Букв в баш скрипте для постгреса

Доброго времени суток, столкнулся с такой проблемой, я пишу простенький скрипт на bash, и у меня возникла проблема с регистрами букв наименования баз данных.

Есть linux ubuntu server, на нем 1с + postgres... пишу скрипт для автоматизации разворачивания тестовых баз.

#!/bin/bash
basename="OtchetLena"
service srv1cv83 stop
psql -U postgres -c "DROP DATABASE "$basename;""
psql -U postgres -c "CREATE DATABASE "$basename;""
pg_dump -U postgres $basename | pigz << /backup$basename.sql.gz

Проблема в том что при выполнении скрипта на третьей строчке постгрес пытается удалить не базу OtchetLena, а otchetlena, соответственно из-за разницы регистров не находит ее и ругается что не может ее грохнуть...

Может быть кто-нибудь сможет подсказать как передать постгресу наименование базы с учетом регистра?

у нас много разных баз и многие из них имеют имена в разных регистрах... в данном примере база для тестирования отчетов.

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

В мануале давно всё про это

В мануале давно всё про это написано:
http://postgresql.ru.net/manual/sql-syntax-lexical.html#SQL-SYNTAX-IDENT...

Тоесть я правильно понял

Тоесть я правильно понял написанное в мануале что что бы учитывался регистр нужно использовать двойные ковычки, которые экранируют переменную. в итоге скрипт должен выглядеть как-то так:

#!/bin/bash
basename="OtchetLena"
service srv1cv83 stop
psql -U postgres -c "DROP DATABASE ""$basename;"""

или вот так :

#!/bin/bash
basename=""OtchetLena""
service srv1cv83 stop
psql -U postgres -c "DROP DATABASE "$basename;""

??

Типа того. Чего спрашивать,

Типа того.
Чего спрашивать, пробуйте!

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023