ODBC接続
午前中はかなり体調が悪かったけど、午後になってだいぶましになったので、ODBC 接続を試してみることに。
まず ODBCドライバをインストール。
$ gem install dbd-odbc
接続文字列は、"DBI:ODBC:DSN名" でいいらしい。接続は簡単にできたけど、select_one でデータを読もうとすると、failed to allocate memory (NoMemoryError) というエラーがでて読み込めない。
いろいろ探しまわった結果、ODBC NoMemoryError に、set textsize をしろという情報を見つける。
DBI.connect("DBI:ODBC:#{dsn}", dbuser, dbpass) do |db| db.do("set textsize 1048576") p db.select_one("select * from odbctest") end
こんな感じでできた。
一応動くところまでいったけど、ODBCドライバに cp932 でデータを渡さないといけないあたりがどうにもいまいち。0.8 ブランチはいいけど、trunk はせっかく全部 UTF8 になってるのに。