
On Thu, Jan 27, 2005 at 04:23:52PM +0200, Krasimir Angelov wrote:
HSQL uses withCString internally. withCString strips the higher order bytes from Char.
You should be able to replace withCString with withUTF8String from my CWStringBasic module, which you can get from here: http://repetae.net/john/recent/src/HsLocale/CWStringBasic.hs and is part of my bigger HsLocale project http://repetae.net/john/recent/out/HsLocale.html but just that one file should be enough if all you need is UTF8. John
On Thu, 27 Jan 2005 15:11:38 +0100, Santoemma Enrico
wrote: Oops... I hit the wrong key, sending a partial post. Sorry :)
Again: I have a problem with strings and unicode chars, when writing slq statements on Oracle ODBC driver through HSQL. I'm writing here because I suspect that a fix could come from writing 8 bit strings, if it is possible somehow.
I'm sorry, the problem is very deep into it's context, and I know it's not easy to follow the reasoning. These are the facts: - I execute an SQL statement, an INSERT, where some values come from a web browser, and are UTF-8 encoded - Oracle ODBC expects UCS-2, so it converts the values into UTF-8, of course scrambling the data - when I convert, in Haskell, UTF-8 to UCS-2, I see that someone (perhaps HSQL) strips one byte from the two Char's bytes, so again Oracle receives bad data
As I haven't found how to force the driver not to strip the byte, and also I don't like to convert data two times, I'd try to send 8 bit strings, but don't know how. Is Word8 a solution? If it is, what is the contstructor?, as w = W8# 1 doesn't compile.
I'm weak on low level Haskell. Where do I find references? On the Report?
Thanks, Enrico
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- John Meacham - ⑆repetae.net⑆john⑈