問題タブ [datadude]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - ソース管理された VS2010 データベース プロジェクトからローカル開発 DB に変更をマージする方法
次の開発サイクルを使用して、新しい開発のために VS2010 データベース プロジェクトを試しています。
- Management Studio を使用してローカル DB インスタンスに変更を加えます (デザイナーなどを使用)
- VS2010 スキーマ比較を使用して、これらの変更を VSDB プロジェクトに同期/インポートします
- VSDB プロジェクトをチェックインし、自動化されたビルド/テストなどを実行します
ソース管理から「最新のものを取得」したいときは、次のようにします。
- ソース管理から VSDB プロジェクト ファイルを更新する
- スキーマ比較を使用して、変更をプロジェクトからローカル データベース インスタンスにプッシュする
これが故障の始まりです... スキーマ比較は2 つのバージョンを同期しようとしているため、独自の機能開発の一環としてローカル データベースに加えた変更を元に戻そうとします。
明らかに、変更したオブジェクトへの変更をスキップするようにスキーマ比較を指示できますが、残念ながら、これは常に正しく機能するとは限りません。compare-behavior-sql-2008-database-projects .
基本的に、VSDB プロジェクトの定義がローカル データベースと自動的に同期されないため、問題が発生します。したがって、スキーマ比較を使用して、変更を取得するたびに「貧しい人々 のマージ」を行う必要があります。
考えられる解決策の 1 つは、次のとおりです。
- スキーマ比較を使用して、最初にローカル DB から VSDB プロジェクトに変更を同期します
- ソース管理から VSDB プロジェクトを更新します (したがって、スキーマ比較ではなく、ソース管理ツールを使用してマージを行います)。
- スキーマ ソース管理からローカル DB インスタンスへの変更を比較する
...これは理想とはかけ離れています。
この点で、RedGate SQL ソース管理の方が優れていますか?
新しい 'Juneau' SQL ツールセットはどうですか?
sql-server - null許容列をISNULLでラップすると、テーブルスキャンが発生しますか?
Visual Studio 2010データベースプロジェクトのコード分析ルールSR0007には、次のように記載されています。
ISNULL関数でNULL値を含む可能性のある各列をラップすることにより、比較式でNULL値を処理する方法を明示的に示す必要があります。
ただし、次の場合、コード分析ルールSR0006に違反します。
比較の一部として、式に列参照が含まれています...列参照を含む式を比較する場合、コードによってテーブルスキャンが発生する可能性があります。
これはISNULLにも当てはまりますか、それともISNULLがテーブルスキャンを引き起こすことはありませんか?
sql-server - SQLServerレプリケーションの頻繁なセットアップと破棄
データベースにVisualStudioデータベースプロジェクトを使用しています。週に2回自動ビルドするように設定しています。ビルドすると、データベースが削除され、スクリプトから再作成されます。
開発データベースにジャンクが蓄積するのを防ぐので、システムを分解して再構築するのが本当に好きです。
次に、2番目のデータベースをミックスに追加し、最初のデータベースから複製されたテーブルを受け取るようにする必要があります。
レプリケーションがサーバーレベルのものであることは知っていますが、データベースにデプロイ後のスクリプトをいくつか追加し、そのスクリプトでレプリケーションのパブリッシャーとサブスクライバーをセットアップすることを望んでいます(それぞれ1番目と2番目のデータベース用)。
これはうまくいくでしょうか?レプリケーションに関する詳細なことはあまりよくわかりません。もっと簡単な方法があれば、聞いてみたいです。