簡體   English   中英

需要幫助減去數據庫列中的值

[英]need help minus value from database column

我正在嘗試從文本框中減去數據庫列中的值,但出現錯誤,在預期條件的上下文中指定了非布爾類型的表達式

  cn.Open();
  SqlCommand command = new SqlCommand();
  command.Connection = cn;

  command.CommandText = "select * from class where  quanitity - '"+Convert.ToInt32(textBox10.Text)+"'";
  command.ExecuteNonQuery();

  cn.Close();

您不是要減去column的值。您想要這樣

        command.CommandText = "update class set quanitity = quanitity - "+Convert.ToInt32(textBox10.Text) ;

這肯定會工作

command.CommandText = string.Format("update class set quanitity= quanitity - {0}",Convert.ToInt32(textBox10.Text));

您需要一個值來比較兩個數字。 您正在從數量中減去TextBox10的值,但是在減去該值之后您想看到什么結果集? 您的位置右側需要進行比較。

command.CommandText = "select (quantity - "+Convert.ToInt32(textBox10.Text)+") from class ;

我懷疑您是SQL注入警報 ..不要連接字符串,它對於sql注入警報是開放的。所以請使用參數化查詢

command.CommandText = "select * from class where  quanitity -@txtbox10";
command.Parameters.AddWithValue("@txtbox10", Convert.ToInt32(textBox10.Text));
command.ExecuteNonQuery();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM