我正在使用c#创建一个windows窗体。
我试图为一个特定的值设置一个条件语句,这个值是通过单击一个按钮从我的数据库中检索到的。列的数据类型为“integer”。
下面是我的代码:
string checkquantity = "SELECT `inventory_item`.`Item_Quantity_Available`FROM `inventory_item` , `patient`, `out_treatment`WHERE `inventory_item`.`Item_ID` = `out_treatment`.`Inventory_ID`AND `patient`.`Patient_ID` = `out_treatment`.`Patient_ID`AND `out_treatment`.`Patient_ID`= '" + pid + "' ";
MySqlCommand selectout = new MySqlCommand(checkquantity, connect);
MySqlDataAdapter selectdata = new MySqlDataAdapter(checkquantity, connect);
DataTable selecttable = new DataTable();
selectdata.Fill(selecttable);
DataSet ds = new DataSet();
selectdata.Fill(selecttable);
selectdata.Fill(ds);
int i = ds.Tables[0].Rows.Count;
if ( i <= 0)
{
MessageBox.Show("Out of Stock");
}
我是新来的。
我不认为 int i = ds.Tables[0].Rows.Count;
是正确的方法。
非常感谢您的帮助。
1条答案
按热度按时间jjjwad0x1#
首先,就像@flydog57所说的,您不应该连接您的sql查询。最好的方法是使用参数,例如:
其次,您可以使用mysqldatareader验证item\u quantity\u available是否等于0,如前一个示例中所示。否则,如果您只想验证是否存在数据,则条件可能如下所示:
第三个改进是用join子句连接表。