我的问题在标题中我有allcodes数组和代码文本框(kodTxtBox)我将分割文本框像每个元素一行,并查询所有元素与for循环,然后当我运行它,它显示的查询只有最后一个元素的allcodes数组与消息框,但其他进入else并给出错误消息框
我的密码里有一些土耳其语单词。
第一个月birim = monad
birimFiyat = Price per 1 unit
ürünler = products
ürünler.sipariskod = products.ordercode
等等。
我为此做了很多方法,我使用foreach所有变量类型都是字符串
allCodes = kodTxtBox.Text.Split('\n');
for (int i = 0; i < allCodes.Length; i++)
{
queryString = "SELECT ürünler.siparisKod, ürünler.aciklama, ürünler.birim, ürünler.fGrup, ürünler.birimfiyat FROM ürünler WHERE (((ürünler.siparisKod)=\"" + allCodes[i] + "\"));";
using (OleDbCommand query = new OleDbCommand(queryString))
{
query.Connection = connection;
reader = query.ExecuteReader();
if (reader.Read())
{
MessageBox.Show(allCodes[i] + " Succesful");
var desc = reader["aciklama"].ToString();
var monad = reader["birim"].ToString();
var sellPrice = reader["birimFiyat"].ToString();
MessageBox.Show("Açıklama: " + desc + " Birim: " + monad + " Satış Fiyatı: " + sellPrice);
reader.Close();
}
else
{
MessageBox.Show("Hata");
}
}
}
1条答案
按热度按时间kpbpu0081#
我通过执行单个查询而不是多个查询解决了这个问题。 在每个查询中返回到一个列表中,最后我使用列表中的元素进行了必要的for循环