DBAtlas · Veritabanı operasyon atlası

ORA-01400: cannot insert NULL into (column)

Oracle

Ne demek?

NOT NULL constraint'i bulunan bir sütuna NULL değer eklenmeye ya da o sütun NULL yapılmaya çalışıldı. Zorunlu bir alan boş bırakılamaz.

Neden olur?

INSERT ifadesinde zorunlu sütuna değer verilmemesi, UPDATE ile sütunun NULL'a çekilmesi, sütun için DEFAULT tanımlı olmaması veya alt sorgudan/uygulamadan boş değer gelmesi.

Nasıl çözülür?

Hata mesajındaki sütun adına geçerli bir değer girin. Sütuna makul bir varsayılan tanımlayın: ALTER TABLE tablo MODIFY (sutun DEFAULT 0); (DEFAULT yalnızca sütun INSERT'te hiç belirtilmediğinde devreye girer; açıkça NULL gönderilen değerler için 12c+ DEFAULT ON NULL kullanın: ALTER TABLE tablo MODIFY (sutun DEFAULT ON NULL 0);) Kural gerçekten zorunlu değilse constraint'i kaldırın: ALTER TABLE tablo MODIFY (sutun NULL); Uygulamada boş değerleri gönderilmeden önce doğrulayın.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar