C# 使用oledb进行选择
我不能做选择。。。 我不能在围棋中选择日期 计算所需数量的变化率 计算了一个日期之前和一个日期之后C# 使用oledb进行选择,c#,for-loop,oledb,C#,For Loop,Oledb,我不能做选择。。。 我不能在围棋中选择日期 计算所需数量的变化率 计算了一个日期之前和一个日期之后 for (int i = 1; i <= MesesDemanda; i++) { int cont = 0; DateTime dataposterior = DateTime.Now, dataanterior = DateTime.Now; dataanterior
for (int i = 1; i <= MesesDemanda; i++)
{
int cont = 0;
DateTime dataposterior = DateTime.Now, dataanterior = DateTime.Now;
dataanterior = dataanterior.AddMonths(i);
dataposterior = dataposterior.AddMonths(-(i - 1));
con.Open();
cmd = new OleDbCommand("SELECT HistSaida.dataHistSaida, HistSaida.idProdutoHistSaida, HistSaida.qtdHistSaida FROM HistSaida WHERE (((HistSaida.dataHistSaida) BETWEEN #" + dataanterior + "# AND #" + dataposterior + "#) AND idProdutoHistSaida = " + idProduto + ")", con);
dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
Demanda = Demanda + Convert.ToInt32(dr["qtdHistSaida"]);
cont = 1;
}
}
dr.Close();
con.Close();
Valordivisao = Valordivisao + cont;
}
for(int i=1;i使用如下参数
cmd = new OleDbCommand("SELECT dataHistSaida, idProdutoHistSaida, qtdHistSaida FROM HistSaida WHERE ((dataHistSaida <=? AND dataHistSaida >= ?) AND idProdutoHistSaida = ?)", con);
cmd.Parameters.AddWithValue("@p1", dataanterior );
cmd.Parameters.AddWithValue("@p2", dataposterior );
cmd.Parameters.AddWithValue("@p3", idProduto );
如果需要求qtdhitsaida
列的和,则可以按如下所示更改sql语句
SELECT SUM(qtdHistSaida) FROM HistSaida WHERE ((dataHistSaida <=? AND dataHistSaida >= ?) AND idProdutoHistSaida = ?)
var result = cmd.ExecuteScalar();
条件表达式中的数据类型不匹配且变量更多?我需要更多帮助,我无法在数据库中进行选择您为dataHistSaida和idProdutoHistSaida列提供的数据类型是什么?TahHistSaida是日期,idProdutoHistSaida是整数