我在 C# 中有这段代码:
label3.Text = dateTimePicker1.Value.ToString();
DateTime vencim = dateTimePicker1.Value;
DataTable llenar3 = minaf.cargrid3(vencim);
BindingSource forwo = new BindingSource();
forwo.DataSource = llenar3;
dataGridView1.AutoGenerateColumns = true;
dataGridView1.DataSource = llenar3;
dataGridView1.Refresh();
cargrid3 是这样的:
DataTable rcargaP = new DataTable();
SqlConnection abre1 = Tconex.GetConnection();
SqlDataAdapter da3 = new SqlDataAdapter();
SqlCommand llena5 = new SqlCommand("vencedata", abre1);
SqlParameter para1 = new SqlParameter("@venci", SqlDbType.SmallDateTime);
para1.Value = vence; llena5.Parameters.Add(para1);
llena5.CommandType = CommandType.StoredProcedure;
da3.SelectCommand = llena5;
da3.Fill(rcargaP);
return rcargaP;
程序是这样的:
alter proc vencedata (@venci datetime)as
select conta,vencimento,pagamento,historico,original,formpagto,planoconta,clifor
from financeiro where vencimento >= @venci
order by vencimento desc
datetimepicker 有效,如果我在 SQL Studio 中编写,则 proc 有效:
vencedata '01/31/2013'
程序 vencedata 仅适用于这种格式
vencedata '03/28/2013' (mm/dd/yyyy)
但是当我尝试
vencedata '28/03/2013'(dd/mm/yyyy)
我也试过这个:
alter proc vencedata (@inicio smalldatetime/*,@final smalldatetime*/)as
select idconta,vencimento,pagamento,historico,original,formpagto,planoconta,clifor
from financeiro where vencimento >= convert (varchar, @inicio,101)
一个不工作。