列の設計で varchar から nvarchar に変更する必要がある運用データベースがあります。デザインを再作成して保存するように強制できることはわかっていますが、そうするのは良い考えですか?
結果と他の提案は何ですか?
更新: その SQL Server 2008
列の設計で varchar から nvarchar に変更する必要がある運用データベースがあります。デザインを再作成して保存するように強制できることはわかっていますが、そうするのは良い考えですか?
結果と他の提案は何ですか?
更新: その SQL Server 2008
本番データベースからテスト データベースを作成し、スクリプトを実行してフィールド タイプを更新することをお勧めします。
次の手順に従う必要があります。
これは、本番サーバーでデータ損失を回避するための最も節約できるソリューションです。
@Ye Myat Aung、データ型を varchar から nvarchar に直接変更できます。構造を再作成する必要はありません。nvarchar はデータを Unicode で保存しているため、列のサイズに注意してください。varchar のほぼ 2 倍になります。
Visual Studio データベース エディションを使用して配置スクリプトを生成する場合、これは自動的に作成されます。ただし、背後で行うことは次のとおりです
。1)新しい定義でテーブルを作成します。テーブルに {TableName}_new という名前を付けるだけです。
2)古いテーブルにあるようにインデックスを作成します
3)古いテーブルにあったようにトリガーを作成します(そしてそれらを無効にします)
4)古いテーブルから新しいテーブルにデータをコピーします。
5) テーブル名に _old を追加して、古いテーブルの名前を変更します
6) 名前から _new を削除して、新しいテーブルの名前を変更します