如何解决OleDb.OleDbException条件表达式中的数据类型不匹配
"Select *
From Products
Where (ProductName) = '" + productName.Text + "' and (Revise) = '" + a + "'";
我在其中具有产品名称,并在同一张表上进行了2个不同列的修订。
我有几行具有相同的产品名称,但修订日期不同。我正在尝试选择正确的。
con.open();
OleDbCommand select = new OleDbCommand();
select.Connection = con;
Object revize = revizyonlar.SelectedItem;
if(revize != null)
{
string a = revizyonlar.SelectedItem.ToString();
System.DateTime b = Convert.ToDateTime(a);
a = b.Date.ToShortDateString();
a = "Select * From Products where (ProductName) = '" + productName.Text + "' and (Revise) = '" + a + "'";
select.CommandText = a;
}
else
select.CommandText = "Select * From Products Where (ProductName) = '" + productName.Text + "'";
OleDbDataReader reader = select.ExecuteReader();
while (reader.Read())
{
}
解决方法
日期表达式在Access中由 octothorpes 分隔,因此:
a = b.Date.ToString("yyyy'/'MM'/'dd");
a = "Select * From Products Where ProductName = '" + productName.Text + "' And Revise = #" + a + "#";
也就是说,请听Ňɏssa。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。