OleDbDataAdapter.Fill()提供程序无法确定Object值

时间:2017-01-16 00:17:53

标签: c# winforms ms-access oledbdataadapter

我正在使用C#.NET与Windows窗体项目中的(.mdb)MS Access数据库文件进行通信。

我以前在dataGridView中显示[date],但是客户端请求了军事日期(YYYY-MM-DD)格式。

代码:

    public void textBox1_KeyUp(object sender, KeyEventArgs e)
    {
        string cmd = "SELECT TOP 1 [vial], [experiment], [field_vial], [host_or_trap], [capture->storage], [fungus], [locality], [county], [province], [Country], ( CStr(year([date])) & CStr(month([date])) & CStr(day([date])) ), [VIAL_note], [collector/museum], ( CStr(year([date collected])) & CStr(month([date collected])) & CStr(day([date collected])) ), [Field1] FROM [COLLECTIONS] WHERE vial LIKE '%" + textBox1.Text + "%'";
        OleDbCommand vialsearch = new OleDbCommand(cmd, this.thefile.dbo);
        OleDbDataAdapter vialadapter = new OleDbDataAdapter(vialsearch);
        DataSet vials = new DataSet();
        vialadapter.Fill(vials, "INIT");
        this.dataGridView1.DataSource = vials.Tables["INIT"];
        vialadapter.Dispose();
    }

使用Microsoft Jet OLEDB 4.0时,错误消息将“object”更改为“string” - 所有其他措辞都完全相同。目前正在使用Microsoft ACE OLEDB 12.0。

怎么办?

0 个答案:

没有答案