Re: proposal: function parse_ident
От | Teodor Sigaev |
---|---|
Тема | Re: proposal: function parse_ident |
Дата | |
Msg-id | 56B8BA83.1090504@sigaev.ru обсуждение исходный текст |
Ответ на | Re: proposal: function parse_ident (Pavel Stehule <pavel.stehule@gmail.com>) |
Ответы |
Re: proposal: function parse_ident
Re: proposal: function parse_ident |
Список | pgsql-hackers |
> rebased, messages changes per Tom's proposal Cool feature and sometimes I needed it a lot. But, seems, there are some bugs in error processing. 1 Following query is okay: # select * from parse_ident(E'"Some \r Schema".someTable'); parse_ident ------------------------------ {"Some \r Schema",sometable} but: % select * from parse_ident(E'"Some \r Schema".9someTable'); Schema".9someTable"tifier after "." symbol: ""Some Return carriage is not escaped in error message. Suppose, any other special charaters will not be escaped. 2 # select * from parse_ident('.someTable'); ERROR: missing identifier after "." symbol: ".someTable" Why AFTER instead of BEFORE? 2 Function succesfully truncates long indentifier but not in case of quoted identifier. select length(a[1]), length(a[2]) from parse_ident('"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx".yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy') as a ; length | length --------+-------- 414 | 63 -- Teodor Sigaev E-mail: teodor@sigaev.ru WWW: http://www.sigaev.ru/
В списке pgsql-hackers по дате отправления: