Значение магазина с пробелом

Я использую Postgresql V 9.1:

SELECT 'k=>name, v=>Nava Ratna Secondary School'::hstore;

Этот код возвращает ошибку:

ERROR:  Syntax error near 'R' at position 17
LINE 1: SELECT 'k=>name, v=>Nava Ratna Secondary School'::hstore;
               ^

********** Error **********

ERROR: Syntax error near 'R' at position 17
SQL state: XX000
Character: 8

И заполнение пробелов в 'Nava Ratna Secondary School' как 'Nava_Ratna_Secondary_School' или удаление их 'NavaRatnaSecondarySchool' работает.

Но мне нужно хранить среднюю школу v=Nava Ratna с пробелами. Как это сделать?

1 ответ

Решение
SELECT 'k=>name, v=>"Nava Ratna Secondary School"'::hstore;

Когда в значениях или ключах есть одинарные кавычки, проще всего использовать долларовую кавычку:

SELECT $$k=>"name", v=>"St. Xavier's Academy"$$::hstore;

Или более распространенное побег:

SELECT 'k=>"name", v=>"St. Xavier''s Academy"'::hstore;
Другие вопросы по тегам