Обновить значение данных в моей базе данных

У меня есть поле со списком данных:

Beef
Calamansi
Chicken
Egg
Fish
Fish_Sauce
Oil
Pork
Rice
Soy_Sauce
Vegetables
Vinegar

затем, если выбрать Beef в моем comboBox, затем нажать кнопку, он будет искать Beef в моей базе данных Stocks_Name, затем в моем textbox1 я введу целое число, а затем добавлю это к Total_Stocks, эквивалентному данным Beef.введите описание изображения здесь

какой командный текст я должен использовать, потому что я не могу найти конкретный командный текст в Интернете для моей проблемы. Я только знаю, как вставить и выбрать. заранее благодарю

ОБНОВИТЬ:

он не добавил, но вместо этого он изменил мои данные 100 на 1, это должно быть 101. вот моя работа: `

connection.Open();

OleDbCommand cmd = new OleDbCommand(@"UPDATE Add_Stocks SET Total_Stocks=@QWE WHERE Stocks_Name=@STOCKS" , connection);
cmd.Parameters.AddWithValue("@QWE", textBox1.Text);
cmd.Parameters.AddWithValue("@STOCKS", comboBox1.Text);


cmd.ExecuteNonQuery();
{
    MessageBox.Show("ADDED!");
    connection.Close();
}

2 ответа

Решение

Вам понадобится UPDATEЗаявление, которое

создает запрос на обновление, который изменяет значения в полях указанной таблицы на основе указанных критериев.

Синтаксис:

UPDATE Your_Table_Name
SET Total_Stocks = Total_Stocks + @IncrementValue, 
WHERE Stocks_Name = 'Beef';

Вам нужно будет добавить параметр для заполнения @IncrementValue

yourOleDBCommand.Parameters.Add("@IncrementValue", OleDbType.Integer).Value = Convert.ToInt32(yourTextBox.Text);

Источник: MSDN

Если я понял твой вопрос, это простой запрос,

UPDATE Your_Table_Name 
SET Total_Stocks = Total_Stocks + @Int_Value_from_Textbox
WHERE Stock_Name = 'Beef'

где @Int_Value_from_Textbox это параметр, который нужно добавить к вашей команде перед выполнением.

Другие вопросы по тегам