C #, SQL FOREIGN KEY - PullRequest
       1

C #, SQL FOREIGN KEY

0 голосов
/ 26 марта 2012

Я пытаюсь вставить данные в таблицу 'table', но я получаю сообщение об ошибке внешнего ключа 'building_id' из таблицы построения. Как мне пройти через нее?

Запрос об ошибке:

Оператор INSERT конфликтует с ограничением FOREIGN KEY "FK_user_user".
Конфликт произошел в базе данных "C: \ USERS \ USER \ DOWNLOADS \ VIUSAL \ VIUSAL \ ENERGYVIUSAL \ ENERGYVIUS1 \ DATABASE.MDF ", таблица" dbo.building ", столбец" building_id ".Оператор был прекращен.

Это код:

DataRow drowEmployee = dsetEnergyViusal.Tables["Table"].NewRow();
drowEmployee["Name"] = txtName.Text;
drowEmployee["ContactID"] = Convert.ToInt32(txtContactId.Text);
drowEmployee["Company"] = txtCompanyId.Text;
drowEmployee["Building_id"] = txtBuildingID.Text;
drowEmployee["Telephone"] = txtContactNumber.Text;
drowEmployee["Email"] = txtEmail.Text;
drowEmployee["Password"] = txtPassword.Text;

if (radClient.Checked)
   drowEmployee["Client"] = radClient.Checked;
else if (radNews.Checked)
   drowEmployee["News"] = radNews.Checked;

drowEmployee["Telephone"] = txtContactNumber.Text;

dsetEnergyViusal.Tables["Table"].Rows.Add(drowEmployee);

sqldaEnergyViusal.Update(dsetEnergyViusal, "Table");

MessageBox.Show("Record has been successfully added.", "EnergyViusal", MessageBoxButtons.OK, MessageBoxIcon.Information);
User_register_Load(null, null);

Ответы [ 2 ]

1 голос
/ 26 марта 2012

Вероятно, идентификатор здания, который вы вводите в текстовое поле и отправляете в запросе вставки, не существует в таблице здания.

0 голосов
/ 26 марта 2012

Возможно, вы добавите Building_Id в качестве внешнего ключа в текущую вставляемую таблицу. чтобы избежать необходимости сначала вставлять данные в таблицу Building и использовать этот вставленный идентификатор в этой вставке, т. е. необходимо использовать действительный идентификатор building_id во вставке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...