データ型がある程度「関連」している限り、そうです、絶対にこれを行うことができます。
INTをaに変更できますBIGINT。2番目のタイプの値の範囲が大きいため、データが「失われる」危険はありません。
VARCHAR(50)aを-に変更できますVARCHAR(200)。タイプは互換性があり、サイズは大きくなっています-何かを切り捨てるリスクはありません。
基本的に、あなたはただ必要です
ALTER TABLE dbo.YourTable
ALTER COLUMN YourColumn VARCHAR(200) NULL
または何でも。200文字より長い文字列がない限り、問題はありません。文字列が長い場合はどうなるかわかりません。変換がエラーで失敗するか、先に進んで一部のデータが切り捨てられた可能性があることを通知します。したがって、最初にデータのコピーでこれを試すことをお勧めします:-)
VARCHARをまたはそのようなものに変更する必要がある場合は、少し注意が必要です。INT明らかに、新しいタイプに「適合」しない列値がある場合、変換は失敗します。ただし、別の「一時的な」新しい列を使用しても、これは修正されません。これらの「互換性のない」ケースに何らかの方法で対処する必要があります(無視し、NULLを残し、デフォルト値に設定します)。
VARCHARまた、西ヨーロッパ以外の文字を使用している場合は、とを切り替えるのNVARCHARが難しい場合があります。他の形式で表現できないため、またはあるタイプから別のタイプへの「デフォルト」変換であるため、変換時に特定のエントリが失われる可能性があります。期待どおりに機能しません。