Символы пробелов в полях Char, VarChar

2011-03-07 Thread AZDesign
Firebird 2.5.0.26074 (x64) Делаем табличку: Create table Words (Word VarChar(250) character set WIN1251 Unique); Затем вставляем строку: Insert into Words(Word) values(''); и еще одну: Insert into Words(Word) values(''); получаем: Statement failed, SQLSTATE =

Re: Символы пробелов в полях Char, VarChar

2011-03-07 Thread Vlad Khorsun
"AZDesign" wrote in message ... Firebird 2.5.0.26074 (x64) Делаем табличку: Create table Words (Word VarChar(250) character set WIN1251 Unique); Затем вставляем строку: Insert into Words(Word) values(''); и еще одну: Insert into Words(Word) values(''); получа

Re: Символы пробелов в полях Char, VarChar

2011-03-07 Thread AZDesign
Vlad Khorsun wrote: > >> Это так и должно быть или баг? > > Так и должно быть. Стандарт. > >> Хелен Борри пишет, что в Char завершающие пробелы не являются значащими >> (т.е. отбрасываются), а в VarChar завершающие пробелы являются значащими >> (т.е. сохраняются). >> На практике получается

Re: Символы пробелов в полях Char, VarChar

2011-03-07 Thread Vlad Khorsun
"AZDesign" wrote ... В принципе меня не волнует как они хранятся. Просто мне нужно чтобы в справочнике отличались две строки - одна пустая строка '', а другая состоящая из 1 ' ' (или нескольких пробелов). Сейчас строки состоящие только из пробелов при сравнении равны друг другу, хотя по факту, о

Re[2]: Символы пробелов в полях Char, VarChar

2011-03-07 Thread Sergey Mereutsa
Привет! >> В принципе меня не волнует как они хранятся. Просто мне нужно чтобы в >> справочнике отличались две строки - одна пустая строка '', а другая >> состоящая из 1 ' ' (или нескольких пробелов). >> Сейчас строки состоящие только из пробелов при сравнении равны друг другу, >> хотя по факту, о

Re: Re[2]: Символы пробелов в полях Char, VarChar

2011-03-07 Thread Vlad Khorsun
"Sergey Mereutsa" wrote in message ... >> В принципе меня не волнует как они хранятся. Просто мне нужно чтобы в >> справочнике отличались две строки - одна пустая строка '', а другая >> состоящая из 1 ' ' (или нескольких пробелов). >> Сейчас строки состоящие только из пробелов при сравнении равн

Re[4]: Символы пробелов в полях Char, VarChar

2011-03-07 Thread Sergey Mereutsa
Привет! >> Если товарищ хранит строки на Whitespace - >> http://en.wikipedia.org/wiki/Whitespace_%28programming_language%29 >> - то ему не очень сильно поможет твой совет. > Это ты специально такое выискивал ? %) Угу. Постановка задачи навела на мысль :) >> Я бы посоветовал ему обрамлять к

Re: Символы пробелов в полях Char, VarChar

2011-03-07 Thread AZDesign
1) для решения проблемы я храню строку из 1 пробела как #32 Остальное нужно для единообразия действий и понимания процесса. 2) читаем Хелен Борри: "Использование типов фиксированной длины не рекомендуется для данных, которые могут содержать ЗНАЧИМЫЕ конечные символы пробелов, или для элементов, чья

Re: Символы пробелов в полях Char, VarChar

2011-03-07 Thread Dmitry Yemanov
08.03.2011 7:52, AZDesign пишет: - строка пробелов любой длины рассматривается как пустая, т.е. функция OCTET_LENGTH дает 0 У меня почему-то не дает. Что я делаю не так? - конечные пробельные символы ВСЕГДА НЕ ЗНАЧИМЫЕ, т.е. ' #' = ' # ', (их длина одинаковая), что не соответствует выш