问题是与外键:插入值外键
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_uzytkownik_Logowanie". The conflict occurred in database "Restauracja", table "dbo.Logowanie", column 'LoginID'.
The statement has been terminated.
我检查这个使用断点,并在Logowanie
表的主键时,断点(运行的应用程序)是
baza.SubmitChanges();
后加入在logowanie
表中的LoginID
的主键在SubmitChanges
期间自动添加。
如何将LoginID
的值从logowanie
表中复制到LoginID
的uztkownik
表中?我在这里添加外键值,但这里LoginID
还没有值。
Logowanie newlog = new Logowanie()
{
Login = model.LoginModel.Użytkownik,
Haslo = model.LoginModel.Hasło,
konto = model.LoginModel.Konto
};
uzytkownik user = new uzytkownik()
{
imie = model.uzytkownikModle.imie,
nazwisko = model.uzytkownikModle.nazwisko,
pesel = model.uzytkownikModle.pesel,
nip = model.uzytkownikModle.nip,
telefon = model.uzytkownikModle.telefon,
adres_zamieszkania = model.uzytkownikModle.adres_zamieszkania,
email = model.uzytkownikModle.email,
LoginID = newlog.LoginID //<<<----------------
};
baza.Logowanies.InsertOnSubmit(newlog);
baza.uzytkowniks.InsertOnSubmit(user);
baza.SubmitChanges();
可能是相同的问题http://stackoverflow.com/questions/5560564/the-insert-statement-conflicted-with-the-foreign-key-constraint-fk-tkosikzbozi – NitWit
假设你有一个FK关系在数据库 - 您的Linq-to-SQL模型在这两个实体之间是否也有“链接”?例如。用户对象是否具有某种“登录”(作为登录对象 - 不仅仅是ID)属性? –
我的Linq到SQL有一个“链接”Logowanie.LoginID - > uzytkownik.LoginID' – user1031034