2011-03-20 6 views
5

現在、私たちのデータベースCIのVincentVega(現在はTarantinoに入っています)を使用しています。私たちはWebアプリケーション用にCruiseControl.Netを使用しています(C#ではTFSを使用しています)。データベースのContinuous Integration(CI)用のTarantinoの代替品ですか?

VincentVegaは非常に明快で、(既存のデータを保存しながら)作成と更新の2つのシナリオを同じように処理するため、比較的うまく機能しています。私はTarantinoにアップグレードすることを検討していますが、誰かが私が調べるべきいくつかの選択肢を示唆しているかどうかを知りたいのですが? SQLのようなツール私たちのデータベースは500を超えるテーブルで高度に正規化されているので、残念なことに、「自動的に」デルタスクリプトを生成することは疑問です。

おかげ

エリックTarasoff

+0

テーブルが高度に正規化されている場合、変更スクリプトが有効でないのはなぜですか?多分、より良いジェネレータを使用する必要がありますか?あるレベルでは、すべてのデータベース移行で、明示的であれ暗黙的であれ、デルタの生成/認識が必要です。 –

+0

私はあなたが決着したことを知りたいと思うだろう。そして、私はなぜSQL Compareが適していないのか不思議です。 –

+0

私は年後にこの質問に戻ってくることはないと思う?私がこの疑問を提起した時、私たちはVincentVegaと付き合いました。何年も後に、そして別の組織で、現在のいくつかの選択肢をチェックした後、私はRoundHousEを選択しました。コンベンション・オーバー・コンフィギュレーション・タイプのソリューションであるにも関わらず、さまざまなユース・ケースに対して非常に柔軟性があることがわかりました。それ以上に、ゼロから稼働までの実行は速く、ドキュメンテーションはそれほど悪くはありません。また、それを使用するのに十分な他の人がいるので、簡単に助けを探すことができます。 –

答えて

2

です。

TarantinoとDbUpの大きな違いは、Tarantinoは通常Nantやmsbuildのようなビルドスクリプトから呼び出されますが、DbUpにはアプリケーションで使用する.NETクラスがあることです。これにより、スクリプトが計画どおりに実行されない場合に、より適切なフォールバック処理が可能になります。

http://code.google.com/p/dbup/

ここでポールStovellのブログから関数dbupの​​オリジナルの発表です: http://www.paulstovell.com/dbup

2

私はレッドゲートは今あなたを満足させる新製品、ReadyRollを、持っているので、それは別の答えを投稿することが重要であるかもしれないと思います主な懸念事項

  • 「それは[SQLは、COMPARE]ちょうど正しく一緒に同期スクリプトを入れていない」

はい、差分のツールは、時には間違ったスクリプトを取得することができます。スクリプトがうまくいかないことはよくありませんが、希望の方法で変更が適用されることはありません。 ReadyRollのベスト・オブ・ワールド・ツー・アプローチは、各マイグレーション・スクリプトを作成するためにSQL Compareを使用しますが、開発者は後でスクリプトをカスタマイズできます。

ReadyRollのアプローチは、実行してアップグレードプロセスを管理し、大振りのように、移行ベースである「ラウンドハウスとそのようなツールは、すでに私たちが今やっていることと同様のモデルで動作し、」

  • 一連の連続したスクリプト。このツールは、多くの開発チームがこの方法で作業することを好んでいることを認識して作成されました。

    • 「ラウンドハウスを選択するための最後の一つの理由:チャック・ノリスの」私はこの時点で敗北を認める必要があります

    ...