そんなにありがたくないRailsというかActiveRecordというか、今どきのモダンなORマッパーには、migrationという仕組みがある。データベースのテーブル定義を、sql文で作るのではなく、プログラミング言語で定義できる。tableもRubyで書いちゃえばいいじゃないという発想。履歴管理ができるから、戻すことも可能。言うほど登場シーンがない。テーブルがある100%Rails完結するならいいんだけど、Javaのシステムが使ってるテーブルの管理画面をRailsで作るとかって、全然ありえる話。「有るべき姿」ではないのだが、RDBが事実上のインターフェースファイルみたいになって、サブシステム同士を結びつけているケースもある。ActiveRecordeのモデルの裏方ではなく、もはやRDBがインターフェース。思想としては間違いなんだろうけど、RailsとSQLのどっちが「世界共通言語?」って問いに対しては、SQLが勝ってしまう。タイミングが違うRubyのソースで一括管理すると、ソースのリリースとテーブル定義の変更が、「せーの」でできて、超美しいように見える。本番ではなかなかそういうことしない。DBの定義ってソースのリリースよりも前に、テーブル定義をかえーの、ちょっとしたデータ変換をおこないーの、旧ソースでも新ソースでもどっちでも行ける状態にして、新ソースをドーンとリリースという形が多い。結局ゴリゴリに直でDBをメンテすることになる。ORマッパーそのものがDBエンジン依存を排除できるのがいいのところなのだが、実際には4バイトUTF8もネット上ではちらほら居ている。機械が読むということこうしてプログラマーになりましたWeb系のツヨミとツラミ月別アーカイブ参加グループテクノロジーはてなブログをはじめよう!yugo_yamamotoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。