[ bjevta @ 30.10.2013. 12:02 ] @
sad cu da proguglam ali da pitam i ovde.

updavo mi puce insert komanda koja je pokusala da ubaci string u tabelu, jer vec postoji slican string:

postoji "abcd"
pokusan insert: "abcd "

imam unique constraint nad tom kolonom.

u Java-i ta dva stringa imaju razlicit hash, tako da su razliciti. Za MySQL to je isto?
[ bjevta @ 30.10.2013. 12:10 ] @
da sam sebi odgovorim na pitanje: MySQL trimuje string sa desne strane (ne i sa leve) kad racuna PK/UQ.

dakle, ako radite neko presipanje podataka ili unos sa gui-ja, itd, obavezno trimujte desni whitespace jer ce to za Java, C# i gde vec da bude razlicit string ali za MySQL isti.
[ bogdan.kecman @ 30.10.2013. 12:12 ] @
http://dev.mysql.com/doc/refma...qlmode_pad_char_to_full_length

By default, trailing spaces are trimmed from |CHAR|
column values on
retrieval. If |PAD_CHAR_TO_FULL_LENGTH|

is enabled, trimming does not occur and retrieved |CHAR|
values are padded to
their full length. This mode does not apply to |VARCHAR|
columns, for which
trailing spaces are retained on retrieval.
[ bjevta @ 30.10.2013. 12:14 ] @
"retained" ali se ne uzimaju u obzir kod racunanja kljuca?
[ bogdan.kecman @ 30.10.2013. 14:44 ] @
ovako za kljuc sam se raspitao sad o cemu se radi ... zbog neke
zezancije sa karakter setovima ti razmaci posle stringa ne ulaze u
kljuc, jedini nacin je da umesto varchar koristis varbinary (onda nemas
character set) no tu ima bag, PK radi ok ali unique key ne radi kako treba