27.02.2014

Asp.Net Rol Ekleme Problemi ve Çözümü

Problem:

Cannot insert the value NULL into column 'RoleId', table 'SCV.dbo.aspnet_Roles'; column does not allow nulls. INSERT fails. The statement has been terminated

Açıklama:

Asp.Net, varsayılan üyelik veritabanı (regsql) ve roles sınıfı kullanımında, çok katmanlı bir yapı kullanılmaktadır. Kullanıcı yukarıdaki problemde Roles.CreateRole("RolAdi") komutu ile veritabanı aspnet_Roles tablosuna yeni bir kayıt eklemek istemektedir ancak RoleId değeri null değerleri kabul etmemektedir. Bu mekanizmada aslında RoleId değerinin veritabanı tarafından default olarak eklenmesi gerekmektedir ancak regsql'in hatalı kurulumlarında ya da aktarımlarında default value değerleri kaybolabilmektedir. Dolayısıyla tablonun RoleId için default value değerlerini otomatik vermesi sağlanmalıdır.

Çözüm:

İlgili veritabanı içerisinde aşağıdaki yordamın çalıştırılması ile default değerler yeniden eklenir hale getirilebilir.

alter table aspnet_Roles 
alter column RoleId add ROWGUIDCOL 

ALTER TABLE aspnet_Roles 
ADD CONSTRAINT DF_RoleId DEFAULT newid() FOR RoleId

Asp.Net Rol Ekleme Problemi ve Çözümü
Bu makalenin telif hakkı ve tüm sorumlulukları yazara ait olup, şikayetler için lütfen bizimle iletişime geçiniz.
URL:
Etiketler:

Bu makale 3702 kez okundu

27.02.2014 tarihinde yazıldı
Reitix

Yorumlar

  • hasan
    18.11.2018

    görev yönetimi ve erişim sınırlama gerekçeleri ile hazırladığınız masaüstü ya da web yazılımlara rol özelliği ekleyebilirsiniz, ister klasik asp.net framework isterseniz de güncel .net core sürümleri ile kullanıcı kütüphaneleri çok kullanışlı olarak hazırlanmıştır

  • kaan onay
    08.02.2018

    öncelikle rol kavramının ve neden rollere ihtiyaç duyulduğunun izah edilmesi daha mantıklı olabilirdi, sunucu taraflı programlama araçlarının konu konu işlenecek bir yazı dizisi olabilseymiş keşke

  • kaptan64
    08.06.2015

    rollerle ilgili 38 milyon tane hata var, bence ya başlık daha açıklayıcı olmalıymış ya da içerik tüm rol atamaları hatalarını kapsayan çok kapsamlı bir yazı olmalıydı

  • yildirim.ergun
    03.11.2014

    veritabanı kopyalama işlemlerinde üyelik veritabanının default değerlerini kaybetmesi sonucu oluşan hatadır

  • tolg34
    30.09.2014

    di mi di mi hiç aklıma veritabanına bakmak gelmemişti

  • derin066
    27.08.2014

    Furkan Bey teşekkürler verdiğiniz bilgi çok işime yaradı.

Bu yazıya siz de yorum yapabilirsiniz

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.