Pallavi 24 Ответов: 1

Как увеличить значение счетчика, хранящегося в базе данных, одним нажатием кнопки ?


В таблице есть столбец с именем Quantity. количество доступных книг в инвентаре хранится здесь. При снятии книги с пользователя значение в столбце количество должно увеличиться на 1. Это де-назначение выполняется одним нажатием кнопки. Как я могу выполнить это?

Что я уже пробовал:

Я ничего не пробовал. Я подумал о создании процедуры для этого. Но я не знаю,как вызвать процедуру в кнопке click..

Richard MacCutchan

Вы можете использовать хранимую процедуру или выбрать и обновить код. В чем проблема?

Pallavi 24

Преобразование не удалось при преобразовании системы значений varchar.Окна.Формы.DataGridViewSelectedRowCollection ' к типу данных int.
Я получаю вышеуказанную ошибку, когда использую инструкцию Update..
Я использовал приведенный ниже код,.....
УМК.Свойства commandtext = "IssueBooks обновить набор BookStatus='вернулся', где IssueId='"+dataGridView1.SelectedRows+"' ";
Я использовал вид сетки. На основе выбора, который делает пользователь, таблица должна быть обновлена..

Richard MacCutchan

Во-первых, не используйте конкатенацию строк для создания операторов SQL; используйте параметры. А во-вторых, посмотрите на типы данных, на которые вы ссылаетесь, они должны быть одинаковыми.

Pallavi 24

Если я создам процедуру, то как она будет вызываться при вызове кнопки ?

1 Ответов

Рейтинг:
1

OriginalGriff

Попробуй:

using (SqlConnection con = new SqlConnection(strConnect))
    {
    con.Open();
    using (SqlCommand cmd = new SqlCommand("UPDATE myTable SET Quantity = Quantity + 1 WHERE BookID = @BI", con))
        {
        cmd.Parameters.AddWithValue("@BI", IdValueForTheRowToSayWhichBookItIs);
        cmd.ExecuteNonQuery();
        }
    }

[EDIT]забыл условие WHERE...[/РЕДАКТИРОВАТЬ]


Pallavi 24

Величина количества не должна превышать. Я имею в виду, что если библиотекарь ввел количество как 10, то после каждого приращения значение количества не должно превышать 10.
10-это предел, верно.