2005-11-17(Thu) [長年日記]
_ AjaxでTodoList
てめえのOutlookのTaskの中にいれっぱなしのTaskで、「TodoListほしい」というのがあって、できればajaxでできたらかっちょいいのになーとか思ってたら作例キタ━━━(゜∀゜)━( ゜∀)━( ゜)━( )━( )━(゜ )━(∀゜ )━(゜∀゜)━━━!!
というわけで明日SD即買いです。
_ mingw32ruby1.8.2+ruby-oci8(1.8.3bin配布)+rails+WebrickだとSegmentation Faultでお亡くなりになる件について。
てめえのPCにゃVS6.0がはいってんじゃん!ということに今日突然気づき、自前コンパイルしてみたらあっさり動いた。今まで悩んでたのはいったひ...以下構成
- mswin32ruby1.8.3(ftp.ruby-lang.orgから)
- oracle client 9iR1
- ruby-oci8 0.1.13
- rails 0.14.3+Webrick
- iconv(kaoriyaさんから)
なんで自前コンパイルしてみる、に気づかなかったんだろう?
あと、mswin32rubyが添付ライブラリも含めてコンパイルできるようになりたい。自前コンパイルだとzlibがなくて、rubygemsがこけちった。
_ rails+oracleで書いてみた。
デバッグ用にと思って、v$sessionとかv$sqlareaを表示するのを書いてみようと思ったら、column名がとれなかった。見てみたら、oci_adapter.rbに、
select column_name, data_type, data_default, nullable, case when data_type = 'NUMBER' then data_precision when data_type = 'VARCHAR2' then data_length else null end as length, case when data_type = 'NUMBER' then data_scale else null end as scale from all_catalog cat, all_synonyms syn, all_tab_columns col where cat.owner = #{owner} and cat.table_name = #{table} and syn.owner (+)= cat.owner and syn.synonym_name (+)= cat.table_name and col.owner = nvl(syn.table_owner, cat.owner) and col.table_name = nvl(syn.table_name, cat.table_name)
なコードを発見。これだとv$系は使えないよねー。値は帰ってくるけど、colmunsでとれないっていうか。インスタンスのカラム名をメソッドとして利用するのはできた。
それと、これ何回も呼び出されるみたいだから、ownerとtable_nameのところは文字列埋め込みじゃなくて、PreparedStatementキボン。
_ ActiveRecordでouterjoinしたいときってどうするの?
- find_by_sqlで書くのかな?
- Modelを複数作って別々に呼び出すのかな?
- あるいはViewでやっちゃえ、なのかな?
うーん...。たとえばs2daoとかならどうなんだろう?
msvcrtのDLLが一致してるか確認。