OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: Localisation: Character Encodings & RDBMS, Unicode->UTF-8 wit h Ro u

[ Lists Home | Date Index | Thread Index ]
  • From: Matt Sergeant <matt@sergeant.org>
  • To: Dylan Walsh <Dylan.Walsh@Kadius.com>
  • Date: Mon, 19 Jun 2000 11:27:39 +0100 (BST)

On Mon, 19 Jun 2000, Dylan Walsh wrote:

> Forwarding, as it is relevent to this thread.
> 
> > -----Original Message-----
> > From:	Ronald Bourret [SMTP:rpbourret@hotmail.com]
> > Sent:	Saturday, June 17, 2000 12:35 PM
> > To:	mrys@microsoft.com; Dylan.Walsh@Kadius.com
> > Subject:	RE: Localisation: Character Encodings & RDBMS,
> > Unicode->UTF-8 wit h Ro und Tripping
> > 
> > Michael Rys wrote:
> > 
> > >Most databases provide Unicode support (e.g., nchar). Since UTF-8 is an
> > >encoding where the unicode two-byte characters are mapped into a 
> > >single-byte
> > >character space such that for some characters two or three single-byte
> > >characters are used, you of course can easily store UTF-8 as well in an
> > >single-character string datatype. However, strlen functions are normally
> > >oblivious to the fact that you actually have UTF-8 stored in the later 
> > >case,
> > >but just from a storage point of view, you should be able to roundtrip
> > >either UTF-8 or Unicode.
> > 
> > Note also that, unless the database knows it is storing UTF-8, any 
> > characters that require two bytes to be stored will be unqueriable. For 
> > example, suppose the character 'ä' requires two bytes to be store (I don't
> > 
> > actually know if it does or not) and the database thinks it is storing 
> > ASCII. If so, the query
> > 
> >   SELECT * FROM Employees WHERE Name="Schäfer"
> > 
> > will fail because the bytes actually stored in the database are:
> > 
> >   "Sch--fer"
> > 
> > where -- represents the two bytes needed to store 'ä', which don't match 
> > "Schäfer".

They do if the query is also in UTF-8, and therefore you're requesting:

SELECT * FROM Employees WHERE Name="Sch--fer"

(using your syntax).

-- 
<Matt/>

Fastnet Software Ltd. High Performance Web Specialists
Providing mod_perl, XML, Sybase and Oracle solutions
Email for training and consultancy availability.
http://sergeant.org | AxKit: http://axkit.org


***************************************************************************
This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@xml.org&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/
***************************************************************************




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS