Tidak bisakah SQL Server menyimpan NULL dalam kolom dengan panjang tetap?

8

Saya menemukan pernyataan ini dalam dokumentasi resmi Oracle :

Di Microsoft SQL Server, hanya kolom dengan tipe data panjang variabel yang bisa menyimpan nilai NULL. Saat Anda membuat kolom yang memungkinkan NULL dengan tipe data panjang tetap, kolom secara otomatis dikonversi ke tipe data panjang variabel sistem ...

Saya belum pernah membaca tentang ini dalam dokumen SQL Server dan saya belum pernah mengalami hal seperti itu. Sebaliknya: dalam SQL Server, tipe data panjang tetap (seperti int dan float, tetapi juga char) banyak digunakan dan disimpan dengan sangat efisien bahkan ketika NULLable.

Apakah ada alasan di balik pernyataan Oracle ini ?!

Michel de Ruiter
sumber
Beberapa info tentang itu di sini stackoverflow.com/a/13536831/73226 BTW jika Anda mengklik ikon "kembali" pada tautan Anda untuk pergi ke halaman sebelumnya yang menyatakan Microsoft SQL Server digunakan dalam dokumen ini untuk merujuk ke Microsoft SQL Server 6.5, Microsoft SQL Server 7.0, dan Microsoft SQL Server 2000 kecuali dinyatakan lain.
Martin Smith

Jawaban:

5

Nah, ini adalah kasus untuk Sybase, yang merupakan leluhur untuk SQL Server. Sayangnya, saya tidak menemukan informasi kapan perubahan yang tepat ini dibuat, tetapi menurut artikel ini mesin sepenuhnya ditulis ulang di SQL Server 2005. Karena ini bukan kasus untuk edisi SQL Server modern, Anda bisa mengabaikan ini pernyataan.

Forrest
sumber