C # Проверьте, если данные уже существуют - PullRequest
0 голосов
/ 06 октября 2019

У меня есть таблица записей о продуктах в базе данных, в ней будут сохранены следующие данные: идентификатор, код продукта, название продукта, размер и цена. Продукт может иметь одинаковый размер и цену, верно? В моем коде я пытаюсь проверить, существуют ли уже данные, если они уже существуют, они не будут сохранены, но если не будут сохранены. Я уже пытался сохранить другое название и размер продукта, но с той же ценой, но он сказал бы, что он уже существует. Я новичок в c #, и это в WinForms, я искал здесь, но я не понимаю, и это на другом языке. Я знаю только Java пока. Я думаю, что эта ошибка является логической ошибкой, но я не знаю, что делать.

Это то, что я пробовал до сих пор,

cmd = new SqlCommand("select Product_Code from ProductRecord where Product_Code = @Product_Code", con);
cmd.Parameters.AddWithValue("@Product_Code", tbpcCode.Text);
DataTable dt = new DataTable();
adapt.Fill(dt);
if ( dt.Rows.Count >= 1 )
{
  MessageBox.Show("Record Already Existing");
}
else
{
  // Do save
}

1 Ответ

0 голосов
/ 06 октября 2019

Вам не нужно открывать соединение с базой данных каждый раз, когда вы создаете продукт. Фактически, вы можете положиться на поле Product_Code в своей базе данных и изменить его на ограничение уникального ключа, см. Документацию Microsoft здесь , поэтому блокирование вставки дублирующих продуктов будет заблокировано.

...