Bagaimana cara menghapus kendala tidak null di server sql menggunakan query

118

Saya mencoba untuk menghapus kendala bukan nol di sql server 2008 tanpa kehilangan data.

Shantanu Gupta
sumber

Jawaban:

203
 ALTER TABLE YourTable ALTER COLUMN YourColumn columnType NULL
Michael Pakhantsov
sumber
5
Saya menemukan saya harus memasukkan tipe di YourColumn misalnya. ALTER TABLE YourTable ALTER COLUMN YourColumn int NULL
Adam Butler
atau Anda dapat melakukan: mengubah nama_tabel mengubah jenis nama_kolom (30) NULL. 30 adalah ukuran jenis kolom Anda, contoh: varchar (30)
nr5
43
Dalam postgres:ALTER TABLE YourTable ALTER COLUMN YourColumn DROP NOT NULL
Shane
2

Hapus batasan not nulluntuknull

ALTER TABLE 'test' CHANGE COLUMN 'testColumn' 'testColumn' datatype NULL;
Nan Yu
sumber
Mengapa ini berfungsi dan bukan jawaban yang diterima di atas untuk mysql?
HopeKing
1
@HopeKing pertanyaannya adalah tentang Microsoft SQL Server dan bukan MySql.
Orchidoris
-1

Hapus batasan kolom: not nullkenull

ALTER TABLE test ALTER COLUMN column_01 DROP NOT NULL;
PasQualE
sumber
Sepertinya T-SQL tidak valid. Meskipun pertanyaan ditandai dengan SQL, perhatikan bahwa pertanyaan tersebut secara eksplisit merujuk ke SQL Server yang hanya menerima T-SQL.
TT.