Subject Re: RC7 bug?
Author Gediminas
--- In firebird-support@yahoogroups.com, Helen Borrie <helebor@t...>
wrote:
> >CREATE TABLE ZMONES (
> > "Zmogaus_ID" PK_TYPE NOT NULL,
> > "Vardas" CHAR24 NOT NULL COLLATE UNICODE_FSS,
> > "Pavarde" CHAR24 NOT NULL COLLATE UNICODE_FSS,
> > "Lytis" BOOL_TYPE NOT NULL,
> > "Gimimo_data" DATE_TYPE,
> > "Miestas" CHAR24 NOT NULL COLLATE UNICODE_FSS,
> > "Salis" COUNTRY_TYPE NOT NULL COLLATE UNICODE_FSS);
>
> Don't specify a COLLATION for unicode_fss columns. It is quite
> meaningless, since unicode_fss has only one collation sequence,
which is
> the default, binary one. You are causing the overflow because, for
some
> operations, the engine will expect additional bytes for this
non-existent
> non-binary collation. T

Could you explain, what exactly callation is? what it does to records?
haven't managed to understand :(

> 2. You will need to specify the character set in your SP's variable
> declarations:
>
> >ALTER PROCEDURE SP_SELECT_KOLEKTYVAI_SEARCH (
> > PAVADINIMAS_IN VARCHAR (50))
>
> should be PAVADINIMAS_IN VARCHAR(50) CHARACTER SET UNICODE_FSS
>

character set is stripped when SP is saved - if I write as you
suggest, when character set is not included when saving stored
procedure :-|

> Is there any reason why you have to use UNICODE_FSS in this
database? You
> would have better control over things (and more characters for less
space)
> if you chose a character set that encompasses the languages you have to
> store, and used collation sequences for places where you have
> language-specific sorting requirements...

records can be in several languages, which has it's own unique symbols
-so decided to use unicode for storing records.