0

私は現在、Redgate SQL Comparison SDK を使用しており、2 つのデータベースをうまく比較できるようにセットアップしました。

私が今やりたいことは、ソース管理から sqlproj を宛先データベースと比較できるようにすることです。

tfs/vsts SDK を使用して sql ファイルをプルしようとしましたが、役に立ちませんでした。

ソース管理から dacpac に sqlproj を構築し、これをソース データベースとしてプルする方法、または sqlproj をソースとして直接プルする方法はありますか?

編集:

これに関する私の最終的な目標は、基本的に、ソース管理されているデータベースのバージョンを、多くの異なる環境で実行されているデータベースと比較し、差分の展開スクリプトを作成できるようにすることです。

これを実現する別の Redgate ツール (SQL 比較と SQL ソース) がありますが、これらは 1 つ (おそらく最大 2 つ) のデバイスにしかインストールできません。 VPC)、これらのツールの 1 つの中央インストールをすべての環境に接続することはできません。また、すべての環境に対して追加のライセンスを購入することもできません。そのため、比較 SDK を使用して「独自の」妥協点を探ろうとしました。

どうもありがとう、

4

2 に答える 2

2

私は Redgate でも働いています。具体的な質問について詳しく知りたい場合は、dlm@red-gate.com まで電子メールでお問い合わせください。電話をかけます。

一般に、以下で行っていることに対してRedgateが推奨するプロセスは、すべてのデータベースにバージョン管理を持たせたい正規化されたスキーマを維持することです。各開発者がSQL Source Control製品を使用して開発中に SSMS から変更を取り込むか、SQL Compare製品を使用してスプリントの最後にバージョンを配置することで、そのスキーマを取得できます。

次に、CI サーバーと組み合わせてDLM 自動化ツールを使用して、ターゲット サーバーの差分レポートと同期スクリプトの作成を自動化できます。DLM Automation は、TeamCity、Jenkins、VSTS、TFS などの一般的な CI サーバー用の PowerShell コマンドレットとプラグインのセットです。SQL Compare Pro コマンド ラインを使用することもできます。

チーム全体が SQL Toolbelt 製品を使用している場合、DLM 自動化ツールをビルド/リリース エージェントに何度でもインストールするライセンスが付与されるため、環境ごとに追加のライセンスは必要ありません。

于 2016-08-22T12:30:45.840 に答える
1

自動ビルド/ci システムのコンテキストでこれを行っていますか? あなたはVSTSについて言及しているので、これが通常機能する方法は、これがソース管理からファイルをすでにプルしているということです。ファイルがビルド エージェントの作業フォルダーに配置されると、SDK (または SQL Compare コマンド ライン) をこれに向けることができるはずです。sql proj は、多くの場合に機能しますが、Redgate ツールで公式にサポートされているデータ ソースではないことに注意してください。

私たち (私は Redgate で働いています) がより適切なツールまたはテクニックのセットを推奨できる場合に備えて、質問を編集して、解決しようとしているより高いレベルの問題について背景を説明していただければ幸いです。

于 2016-08-19T16:03:00.827 に答える