Re: [pgadmin-hackers] [pgAdmin4][Patch]: Fix RM1790 - [Web] Supportsetting a field's value to "null"

Поиск
Список
Период
Сортировка
От Dave Page
Тема Re: [pgadmin-hackers] [pgAdmin4][Patch]: Fix RM1790 - [Web] Supportsetting a field's value to "null"
Дата
Msg-id CA+OCxox4fwA_PcgLAVugBvyadnG_72xbyeT8k+1TzOkdbcUWSg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [pgadmin-hackers] [pgAdmin4][Patch]: Fix RM1790 - [Web] Supportsetting a field's value to "null"  (Surinder Kumar <surinder.kumar@enterprisedb.com>)
Ответы Re: [pgadmin-hackers] [pgAdmin4][Patch]: Fix RM1790 - [Web] Supportsetting a field's value to "null"
Список pgadmin-hackers
On Fri, Feb 3, 2017 at 7:28 AM, Surinder Kumar
<surinder.kumar@enterprisedb.com> wrote:
> Hi Dave,
>
> On Mon, Jan 30, 2017 at 6:18 PM, Dave Page <dpage@pgadmin.org> wrote:
>>
>> On Fri, Jan 27, 2017 at 10:32 AM, Surinder Kumar
>> <surinder.kumar@enterprisedb.com> wrote:
>> > Hi Dave,
>> >
>> > Please find updated patch.
>> >
>> > On Mon, Jan 16, 2017 at 10:01 PM, Dave Page <dpage@pgadmin.org> wrote:
>> >>
>> >> Hi
>> >>
>> >> On Fri, Jan 13, 2017 at 9:24 AM, Surinder Kumar
>> >> <surinder.kumar@enterprisedb.com> wrote:
>> >> > Hi
>> >> >
>> >> > Please find attached patch and review.
>> >> >
>> >> > On Sun, Jan 8, 2017 at 3:27 PM, Dave Page <dpage@pgadmin.org> wrote:
>> >> >>
>> >> >> Hi
>> >> >>
>> >> >> On Friday, December 23, 2016, Surinder Kumar
>> >> >> <surinder.kumar@enterprisedb.com> wrote:
>> >> >>>
>> >> >>> Forgot to attach patch in last thread. please find patch.
>> >> >>
>> >> >>
>> >> >> It looks good for the most part, except:
>> >> >>
>> >> >> 1) You missed the part we discussed about being able to set a value
>> >> >> to
>> >> >> ''
>> >> >> (the literal string containing two single quotes) by entering \'\'
>> >> >> (and
>> >> >> of
>> >> >> course, the follow-on cases to allow setting a value to \'\' by
>> >> >> entering
>> >> >> \\'\\' etc).
>> >> >
>> >> > Fixed.
>> >>
>> >> That doesn't seem right to me - the code you've written looks like
>> >> it'll try to escape anything for use in a string literal, not just
>> >> '\'\ or \\'\\' etc.
>> >
>> > Now the implementation is that It will find and unescape the string
>> > literals
>> > like '\'\ or \\'\\' etc.
>>
>> I ran some tests:
>>
>> - Setting a field to '' resulted in the following SQL:
>>
>> UPDATE public.emp SET
>> job = '''''' WHERE
>> empno = 7369;
>>
>> - Setting a field to \"\" resulted in the following SQL:
>>
>> UPDATE public.emp SET
>> job = '""' WHERE
>> empno = 7499;
>>
>> - Setting a field to \'\' displayed \'\' in the grid until refreshed
>> when the value vanished. The SQL it ran was:
>
> In current behaviour, we are saving the value provided by user and we are
> not refreshing the grid with new values.
> Should we do refresh along with save?

Why would you save the value provided? The point is to escape the
quotes with the slashes - i.e. to store the literal string '' (two
single quotes), the user enters \'\' (because entering just two single
quotes is how we enter an empty string).

I'm not sure why this is so hard - the original request was to make it
work like pgAdmin III. That's well defined and documented behaviour -
I even copied/pasted the description from the docs on this thread.

>>
>> UPDATE public.emp SET
>> job = '''''' WHERE
>> empno = 7499;
>>
>> To be clear, here's what I'm expecting:
>>
>> Input: <empty>
>> Display: [null]
>> SQL: UPDATE t SET c = NULL WHERE k  = <val>
>>
>> Input: ''
>> Display:
>> SQL: UPDATE t SET c = '' WHERE k  = <val>
>>
>> Input: \'\'
>> Display: ''
>> SQL: UPDATE t SET c = '''''' WHERE k  = <val>
>>
>> Input: \\'\\'
>> Display: \'\'
>> SQL: UPDATE t SET c = '\''\''' WHERE k  = <val>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>
>



--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


В списке pgadmin-hackers по дате отправления:

Предыдущее
От: Khushboo Vashi
Дата:
Сообщение: Re: [pgadmin-hackers] [pgAdmin4][Patch]: RM 2069 - Wrong tablespacedisplayed in table properties
Следующее
От: Dave Page
Дата:
Сообщение: Re: [pgadmin-hackers] [pgAdmin4][Patch]: RM 2069 - Wrong tablespacedisplayed in table properties