Saya punya tabel dan salah satu kolom adalah "Tanggal" tipe datetime. Kami memutuskan untuk menambahkan batasan default ke kolom itu
Alter table TableName
alter column dbo.TableName.Date default getutcdate()
tapi ini memberi saya kesalahan:
Sintaksis salah dekat '.'
Adakah yang melihat ada yang salah di sini, yang saya lewatkan (selain memiliki nama yang lebih baik untuk kolom)
Jawaban:
Coba ini
contoh
juga pastikan Anda memberi nama batasan default..itu akan menjadi sakit di leher untuk menjatuhkannya nanti karena akan memiliki salah satu dari nama-nama sistem gila yang dihasilkan ... lihat juga Cara Mengenal Kendala Default Dan Cara Mengurangi Kendala Default Tanpa Nama dalam SQL Server
sumber
Anda dapat membungkus kata-kata yang dipesan dalam tanda kurung siku untuk menghindari kesalahan seperti ini:
sumber
Saya menggunakan prosedur tersimpan di bawah ini untuk memperbarui default pada kolom.
Secara otomatis menghapus default sebelumnya pada kolom, sebelum menambahkan default baru.
Contoh penggunaan:
Prosedur tersimpan:
Kesalahan prosedur tersimpan ini menghilangkan
Jika Anda mencoba untuk menambahkan default ke kolom ketika sudah ada, Anda akan mendapatkan kesalahan berikut (sesuatu yang Anda tidak akan pernah lihat jika menggunakan proc yang disimpan ini):
sumber
Sebenarnya Anda harus Melakukan Seperti contoh di bawah ini, yang akan membantu untuk Memecahkan Masalah ...
sumber
Anda menetapkan nama tabel dua kali. Bagian ALTER TABLE menamai tabel tersebut. Coba: Ubah tabel TableName mengubah kolom [Tanggal] default getutcdate ()
sumber
mengubah tabel TableName drop constraint DF_TableName_WhenEntered
ubah tabel TableName tambahkan kendala DF_TableName_WhenEntered default getutcdate () untuk WhenEntered
sumber