[#41278] [BUG:1.9] BINARY should not be ASCII-compatible — Yugui <yugui@...>

WXVndWkbJEIkRyQ5ISMbKEIKCgo+IBskQiRHISIkKiQqJGAkTSQzJDMkXiRHJE41RE9AJEclKyVQ

15 messages 2010/05/11

[#41407] [Bug #3339] win32ole test failure — Usaku NAKAMURA <redmine@...>

Bug #3339: win32ole test failure

20 messages 2010/05/25
[#41411] Re: [Bug #3339] win32ole test failure — Masaki Suketa <masaki.suketa@...> 2010/05/25

助田です。

[#41412] Re: [Bug #3339] win32ole test failure — "U.Nakamura" <usa@...> 2010/05/25

こんにちは、なかむら(う)です。

[ruby-dev:41172] Re: Rails3 M17N

From: "NARUSE, Yui" <naruse@...>
Date: 2010-05-05 15:05:49 UTC
List: ruby-dev #41172
成瀬です。

情報ありがとうございます。

(2010/05/05 10:03), とみたまさひろ wrote:
> On Fri, 30 Apr 2010 18:20:22 +0900
> "NARUSE, Yui"<naruse@airemix.jp>  wrote:
> 
>> # MySQL とか Oracle とかはどうなんだっけ?
> 
> pure Ruby 版の MySQL は次のように動きます。
> # C版 MySQL は ASCII-8BIT。
> 
> 1. Ruby から MySQL に文字列を渡す場合
> 
> ASCII-8BIT 以外の文字列は MySQL 接続の charset に変換して渡します。
> ASCII-8BIT は変換せずにそのまま渡します。

こちらはよいと思います。

> 2. MySQL から文字列を取り出す場合
> 
> バイナリ以外の文字列は MySQL 接続の charset に対応する encoding として
> 文字列を取り出します。バイナリ文字列は ASCII-8BIT として取り出します。
> 
> MySQL はサーバー側でカラムの charset から接続用の charset に変換するの
> で、取り出される文字列の encoding はカラムの charset によらず、接続用
> charset に対応する encoding になります。

こちらは、アダプタ側が接続の charset を Encoding.default_internal にするのが
正解なのかなぁ。

> Ruby encoding と MySQL charset の変換表は内部で持ってます。
> http://github.com/tmtm/ruby-mysql/blob/2.9/lib/mysql/charset.rb の CHARSET_ENCODING

TIS-620 は Ruby 側にも用意していますね。

-- 
NARUSE, Yui  <naruse@airemix.jp>

In This Thread