Subject UNICODE_FSS declared varchar(1) but I can insert three chars???
Author mailmur
[FB1.5, Win2K, JaybirdJdbc, dotNETprovider1.5]

I use UNICODE_FSS charset as db default. IBAccess tablebrowser
displayes me "varchar(1), charset UNICODE_FSS, Collation UNICODE_FSS,
bytes 3".

Bytes=3 is fine as internal UNICODE_FSS is UTF8 format (dont know why
FB uses so weird charset name here). But point is to accept only one
character in that specific column.

Question 1)
I can insert three characters in that column !!! It is not what I
want as varchar(1) indicates. Still I want all string columns to be
unicode to make life international-aware. Is this a bug in current
Firebird unicode mode?

Question 2)
Is UNICODE_FSS always UTF-8 format, no matter what operating system
is running Firebird server?
At least sourceforge's dotNETProvider always map it to UTF-8 at
clientside. I dont know how Jaybird jdbc converts it, could not find
such line from the sourcecode.

Question 3)
Is there a workaround to keep my column _one character_ long and
still support unicode characters in it?

Insert query and table data:
Insert Into Customers Values(13, 1013, 'CustA', 'RoxorCity',
12.80, '333')

CREATE TABLE Customers (
id integer NOT NULL PRIMARY KEY,
custno integer NOT NULL UNIQUE,
name varchar(50),
city varchar(15),
balance numeric(12,3),
isactive varchar(1)
);


Jaybird jdbc url:
"jdbc:firebirdsql:localhost:testdb2?lc_ctype=UNICODE_FSS&dialect=3"
dotNET url:
"Database=testdb2;User=SYSDBA;Password=masterkey;Server=localhost;char
set=UNICODE_FSS;dialect=3"

Testclient (java, dotNet, testdb) at the end of page:
I've tested insert in both platforms and same happens, I can insert 3
characters in that column and only 4th will throw an exception.
http://koti.mbnet.fi/akini/ib/