[#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:41156] Re: Rails3 M17N

From: とみたまさひろ <tommy@...>
Date: 2010-05-05 01:03:58 UTC
List: ruby-dev #41156
とみたです。

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 になります。

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

-- 
とみたまさひろ <tommy@tmtm.org>
3469 42CC 4D32 F53C AD98  65A5 8C37 FF09 69C1 6040

In This Thread