Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Конфликт инструкции INSERT с ограничением FOREIGN KEY

az Ученик (157), на голосовании 7 лет назад
"FK_komnaty_klienty". Конфликт произошел в базе данных "Gostinitca", таблица "dbo.klienty", column 'Kod_klienta'. Создана БД на SQL Server,выбраны первичные ключи во всех таблицах. БД подключена к visual studio(asp.net). Добавлена таблица в GridView. Нужно добавлять новые данные в таблицу, но при нажатии на кнопку Добавить выходит данная ошибка, и ругается на db.SubmitChanges();Вот весь код кнопки Добавить. protected void Button1_Click(object sender, EventArgs e) { KlietydbDataContext db = new KlietydbDataContext(); klienty tebl = new klienty(); tebl.Familiya = TextBox1.Text; tebl.Imya = TextBox2.Text; tebl.Otchectvo = TextBox3.Text; tebl.Nomer_komnaty = Convert.ToInt32(TextBox4.Text); tebl.Vid_dokumenta = TextBox5.Text; tebl.Nomer_dokumenta = TextBox6.Text; tebl.Mesto_zitelstva = TextBox7.Text; tebl.Plata_za_prozivanie = Convert.ToDecimal(TextBox10.Text); db.klienty.InsertOnSubmit(tebl); db.SubmitChanges(); //здесь Response.Redirect("/Klienty.aspx"); }
Голосование за лучший ответ
Jurijus Zaksas Искусственный Интеллект (474296) 7 лет назад
1. Я в АСП не силен, но как правило для работы с БД существуют data-aware компоненты. Ты уверен, что все эти присваивания необходимы?
2. Ты уверен, что первичный ключ уже существует в базе на момент создания вторичного?
3. Я ХЗ за мелкософтовсие поделки, но в Оракле если ключ не помечен как DEFERRABLE/INITIALLY DEFERRED, то первичный ключ должен быть создан заранее и закоммичен, в одной транзакции создавать оба ключа нельзя.
Похожие вопросы