ThinkGeo.com    |     Documentation    |     Premium Support

Character set using QueryTools

How do I specify the character set to use in a query?


 I am making a simple query like Select * from Cities where Name = "León".  (Notice the accent on the 'o')


But if I change the query (and the Name field in the Cities table) to ... where Name = "Leon" the search succeeds, so the default character set used is not the one I need.


The data is stored using charset utf-8.


Thanks,


 


Al Vigil




 



 


Hi Al,
Can you let us know your computer setting, such as the Format and location which can be found in “Region and language” of Control panel items. Also could you send a demo data to us for test? All the mentioned will help us address the error and resolve it. You can send the demo data to forumsupport@thinkgeo.com.
Thanks,
Johnny

Johnny, 
  
 My format is United States English and location is United States.  Changing the format to Nicaragua Spanish does not affect the search results.  The search still fails to find any records containing diacritics in the searched field.  I have sent you a sample of the demo data to forumsupport@thinkgeo.com
  
 Thanks, 
  
 Al

Al, 
  
 Just a supplementary sure that did you set the Encoding to UTF-8 when you create the ShapeFileFeatureLayer? 
  
 Any more information mentioned by Johnny would be helpful. 
  
 Thanks. 
  
 Yale 


I did not set the UTF-8 Encoding when creating the shape feature layer.   
  
 We use the following code, 
  
 ShapeFileFeatureLayer featureLayer = new ShapeFileFeatureLayer(HttpContext.Current.Server.MapPath("~/Map/SearchLayer/" + SearchDataBases + “.shp”)); 
 Where SearchDataBases contains the string ‘Populations’, the name of the database we are searching. 
  
 How do I set the Encoding?

One more thing,  the query tools corrupt any text having diacritics.  To test this out, try the search 
  
 Select * from Populations where Name like ‘Estel%’ 
  
 You will notice that Estelí is returned as Estelφ

Hi AI, 
  
 Just as you have mentioned, it’s a bug. I have forward to our developers, I think they will give you a better solution later. 
  
 Thanks, 
 Johnny 


Thanks for the help Johnny.  Looking forward to a solution.

Hi AI, 
  
 I have discussed with our developers and it seems that it’s related to the encoding or culture of OLEDB. That’s a little complicated and please wait for sometime. We will give you the solution ASAP. 
  
 Thanks, 
  
 Johnny