12

カスタム CLR オブジェクトをインストールした後、Sql Server Developer Tools (SSDT) VS2012 は更新を許可しません。エラーは「ソーススキーマのドリフトが検出されました。比較を押して更新します。更新後、同じことが起こります。

試してみました設定で、オブジェクトをストアドプロシージャだけに設定しました。設定 -> 一般 -> データ損失の可能性をブロック -> オンとオフの両方を試しました。

4

4 に答える 4

3

これは答えではありませんが、この問題に対処する手がかりです。

列を varchar[200] から varchar[MAX] に更新することになり、この問題も発生しました。サーバーにログインし、そこにインストールされている SQL Management Studio を介してデータベースを手動で更新しようとしたところ、次のエラーが発生しました。

"Saving changes is not permitted. The changes you have made require the folloing tables to be drpped and re-created. You have either made changes to a table that can't be re-created or enable the option Prevent saving changes that require the table to be re-created."

テーブルの再作成は非常に危険であり、「データが失われる可能性がある場合のブロック/ブロック解除」では処理できないようです。したがって、このローカル警告を回避できる場合にのみ、データベースをリモートで更新できると思います。

しかし、なぜ [200] から [最大] にするとテーブルが再作成されるのでしょうか? 意味がありません。[200]から[1000]まで試してみましたが、うまくいきませんでした。これがこの問題の鍵かもしれません。

また、VS のサーバー エクスプローラーで同じ更新を行うと、SQL Management Studio の代わりに機能します。繰り返しますが、なぜですか?

于 2013-11-26T09:12:48.210 に答える