私はプライマリキー 'username'と 'Char'のテーブルを持っており、それをvarcharに変更する必要があります。 データを失うことなくこれを行う方法がありますか? は主キーで、他のすべてのテーブルをカスケードします。SQL ServerのCharからVarcharへの列タイプの変更
ありがとうございました。この列は、多くの他のテーブルで参照されますテーブルの上ご主キーであれば、それはもう少し複雑になります
私はプライマリキー 'username'と 'Char'のテーブルを持っており、それをvarcharに変更する必要があります。 データを失うことなくこれを行う方法がありますか? は主キーで、他のすべてのテーブルをカスケードします。SQL ServerのCharからVarcharへの列タイプの変更
ありがとうございました。この列は、多くの他のテーブルで参照されますテーブルの上ご主キーであれば、それはもう少し複雑になります
ALTER TABLE table_name -<-- Your Table Name
ALTER COLUMN username VARCHAR(50) NOT NULL
:
ALTER TABLE .... ALTER COLUMN ..... VARCHAR(n) NOT NULL
)VARCHAR(n)
主キー列誰もがテーブル拘束とデータ型の任意のセットのためにこのダンスを行う一般的なボイラープレートを持っていますか?手で行う痛みのように聞こえる。 – ggb667
こんにちは、ありがとうございましたが、私は他のテーブルにこのリンクがあると書いています。このSQLコードを実行できません。エラーが発生します。 オブジェクト 'X'は、 'username'列に依存しています。 オブジェクト 'X'は列 'username'に依存しています。 1つ以上のオブジェクトがこの列にアクセスしたため、ALTER TABLE ALTER COLUMN usernameが失敗しました。 – user2097810
その場合、データ型を変更することはできません。外部キー制約を削除し、制約の列を解放してからデータ型を変更し、再度制約を作成する必要があります。この列を参照するすべてのテーブルの列 –