Re: 7.4: CHAR padding inconsistency
От | William ZHANG |
---|---|
Тема | Re: 7.4: CHAR padding inconsistency |
Дата | |
Msg-id | bphjj2$10st$1@news.hub.org обсуждение исходный текст |
Ответ на | 7.4: CHAR padding inconsistency (Troels Arvin <troels@arvin.dk>) |
Список | pgsql-bugs |
Bruce said: > How do other databases handle this? I have tried on MS SQL Server 2000 and Oracle 9i for Windows. SQL Server doesn't like character_length and || , so use len and + instead. Oracle doesn't like character_length either, use length. Hope the result may help. create table chartest(col char(10) not null); insert into chartest values ('AAA'); PostgreSQL: select character_length(col) from chartest; 10 SQL Server select len(col) from chartest; 3 Oracle select length(col) from chartest; 10 PostgreSQL: select character_length(col || 'hey') from chartest; 6 SQL Server: select len(col + 'hey') from chartest; 13 Oracle: select length(col || 'hey') from chartest; 13 PostgreSQL: select 'aaa ' || 'bb'; aaa bb SQL Server: select 'aaa ' + 'bb'; aaa bb Oracle: select 'aaa ' || 'bb' from dual; aaa bb PostgreSQL: select cast('aa ' as char(10)) || 'b'; aab SQL Server: select cast('aa ' as char(10)) + 'b'; aa b Oracle: select cast('aa ' as char(10)) || 'b' from dual; aa b
В списке pgsql-bugs по дате отправления: