タグ

diffとperlに関するkiyo_hikoのブックマーク (2)

  • MySQL::diffでデプロイ時のDBスキーマ更新を自動化! | 創作メモ帳

    前回のエントリ DBテーブルの差分を出力するMySQL::diffをインストールする の続きです。 前回のおさらいを少しすると、 MySQL::diff は二つのデータベーススキーマを比較して差分の ALTER SQL を出力してくれる perl 製スクリプトツールです。 例として以下のコマンドは、database1 データベースを database2 データベースのスキーマに追従する ALTER SQL が生成されます。DB スキーマの更新に便利です。 mysqldiff -u user -p password -i database1 database2 このツールのメリットはフレームワークに依存しないスタンドアロンなスクリプトであることだと思います。デメリットは最近の MySQL の機能に対応していなかったりすることだと思います。例えば PARTITION には対応していません。中身

  • perlで2つの配列を比較する方法について - OKWAVE

    > "@deff = grep { !{map{$_,1}@array2 }-> {$_}}@array1;"で比較ができると書かれていました。 もちろんこういうやり方もアリなのですが、初心者の場合後から見た場合に意味が分かる事が重要だと思うので(理解するまでに結構時間がかかった...)次のようなサブルーチンを書いてみました。 サブルーチンにするとどうしても渡された値が正しいかチェックしなければならないため冗長なコードになりますが... sub eq_array (&;$$) { my ($pred, $array1, $array2); if (ref $_[0] eq 'CODE') { # もしも最初が{ ... }だった場合 ($pred, $array1, $array2) = @_; } else { # 普通に配列のリファレンス二つが渡された場合 ($array1, $arr

    perlで2つの配列を比較する方法について - OKWAVE
    kiyo_hiko
    kiyo_hiko 2012/07/13
    これいいな 使おう 「@diffs = grep {!{map {$_,1} @ys}->{$_}} @xs」 / 追記id:entry:17647281
  • 1