0

いずれかの製品を使用して、データベースだけでなくファイルシステムなどでも移行を行うことに非常に興味があります。

私の最初の考えは、Application.ProductVersionを読みたいと思っていましたが、文字列を返しますが、ほとんどの移行にはLONG​​などが必要ですか?

誰かがこれを行っているかどうかはわかりませんが、私の考えは、2つの異なるバージョンの移行を行うことでした。

1製品を移行します。つまり、ディレクトリを変更するか、Application.ProductVersionを使用するファイルシステムなどを変更します。

  1. フィールドからのものであると私が推測するデータベースのバージョン番号を使用するデータベースを移行するには?

誰かがこのようにそれを使用していますか?

このようなものをサポートする製品はありますか?

私の移行は必ずしもデータベース固有ではありませんが、アプリケーション固有の場合もあります。

現時点での動作方法は、すべての新しいバージョンが整数、つまり1、2、3、4などである必要があり、マイナー、リビジョンなどを考慮していないようです。

洞察を楽しみにしています

ありがとう

4

2 に答える 2

0

MigSharpでは、タイムスタンプとしてlongを使用することも選択できます。したがって、Aasmundの提案はMig#でも機能します。Mig#のバージョン2.1では、タイムスタンプ形式を完全にカスタマイズするオプションがあります(それからlongを計算できる限り)。

したがって、任意の時点(つまりデータベースバージョン)で、ファイルシステムとデータベーススキーマがどのように見えるかについて定義された状態がある場合は、移行フレームワークを使用して、ファイルシステムやデータベースで必要なものをすべて実行させることができます。 。1回の移行でファイルシステムのみを変更する場合は、変更します。この場合、データベースは最新の移行バージョン番号を保持するようにのみ更新されます。

于 2012-11-28T13:24:28.133 に答える
0

MigratorDotNetは、バージョン番号が連続している必要はありません(実際、現在の推奨事項は、longとしてフォーマットされたタイムスタンプを使用することです)。したがって、メジャーバージョンに2桁を超えることはなく、マイナーバージョンに4桁を超えることはなく、ビルド番号とリビジョン番号にそれぞれ5桁を超えることはないことが確実な場合は、これを組み合わせて長さ。たとえば、2.34.1023.86は0200340102300086になります。次のバージョンが2.42.0.2(0200420000000002)の場合、移行エンジンがそれを処理します。ちょっとしたハックのように感じますが(私は好きですが)、実際にファイルシステムなどを操作する「移行」を使用して別のアセンブリを作成するように機能するはずです。d MigratorDotNetが適用されたバージョンを追跡するために使用するSchemaInfoテーブルを含むために、別のデータベースが必要になる可能性があります。同様のハックは、おそらく他の移行製品でも機能する可能性があります。

于 2011-03-07T14:41:10.000 に答える