Watch, Follow, &
Connect with Us
Public Report
Report From: InterBase/Server    [ Add a report in this area ]  
Report #:  131318   Status: Closed
Collation orders problem
Project:  InterBase Build #:  12.0.2.299
Version:    12.0 Submitted By:   Tomasz Czmyr
Report Type:  Basic functionality failure Date Reported:  5/4/2015 6:13:19 AM
Severity:    Serious / Highly visible problem Last Updated: 9/3/2015 3:56:09 PM
Platform:    64 Bit Internal Tracking #:  
Resolution: Duplicate  Resolved in Build: : 12.0.3
Duplicate of:  131317
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
InterBase XE7starting with Update 1 and Update2 have problems with executing query with params and collation order.
Steps to Reproduce:
1. Create database

set sql dialect 1;

create database 'test.ib' default character set win1250;

create table cities (name varchar(100) collate pxw_plk);

2. Insert sample data

insert into cities (name) values ('Kraków');
insert into cities (name) values ('Warszawa');
insert into cities (name) values ('Lódz');
insert into cities (name) values ('Zory');
insert into cities (name) values ('Swiebodzin');
insert into cities (name) values ('Poznan');
insert into cities (name) values ('Warszawa');
insert into cities (name) values ('Gdynia');
insert into cities (name) values ('Sopot');

3. Execute query with collation order

select * from cities order by name;

Result is OK.

                                                                                      
NAME                                                                                                  
===========
Gdynia                                                                                                
Kraków                                                                                                
Lódz                                                                                                  
Poznan                                                                                                
Sopot                                                                                                  
Swiebodzin                                                                                            
Warszawa                                                                                              
Warszawa                                                                                              
Zory                                                                                                  


4. Execute the same query with where clause

select * from cities where name>'Z' order by name;

The result is OK. There is only one record matching criteria.

NAME                                                                                                  
============
Zory                                                                                                  


5. Execute query with params

select * from cities where name>:param order by name;

Fill the parameters form with values: Z

and now resut is WRONG.

NAME                                                                                                  
==============
Lódz                                                                                                  
Swiebodzin                                                                                            
Zory                                                                                                  


Workarounds
None
Attachment
131318.zip
Comments

None

Server Response from: ETNACODE01