MS Accss2010 中标准表达式中的数据类型不匹配

Data type Mismatch in criteria expression in MS Accss2010

我尝试执行 INSERT 查询,但抛出上述错误。我在下面给出了我的代码。

public string InsertMoveDetails(string desc, string currentLocation, string newLocation, string newBay, string requestedBy, string movedBy, string approvedBy, DateTime dateOfMove)
{

        string desc, currentLocation, newLocation, movedBy, approvedBy, requestedBy,newBay;
        DateTime dateOfMove;

        desc = textBoxDescription.Text;
        currentLocation = textBoxCurrentLocation.Text;
        newLocation = comboBoxNewLocation.Text;
        movedBy = comboBoxMovedBy.Text;
        approvedBy = comboBoxApprovedBy.Text;
        dateOfMove = dateTimePickerDateOfMove.Value;           
        newBay = textBoxNewBay.Text;
        requestedBy = textBoxRequestedBy.Text;

        con.Open();
        OleDbCommand cmd1 = new OleDbCommand("INSERT INTO MoveDetails(Descrptn, CurrentLocation, NewLocation, NewBay, RequestedBy, MovedBy, ApprovedBy, DateOfMove) VALUES(@Descrptn, @CurrentLocation, @NewLocation, @NewBay, @RequestedBy, @MovedBy, @ApprovedBy, @DateOfMove)", con);

        cmd1.Parameters.AddWithValue("@Descrptn", desc);
        cmd1.Parameters.AddWithValue("@CurrentLocation", currentLocation);
        cmd1.Parameters.AddWithValue("@NewLocation", newLocation);
        cmd1.Parameters.AddWithValue("@NewBay", newBay);
        cmd1.Parameters.AddWithValue("@RequestedBy", requestedBy);
        cmd1.Parameters.AddWithValue("@MovedBy", movedBy);
        cmd1.Parameters.AddWithValue("@ApprovedBy", approvedBy);
        cmd1.Parameters.AddWithValue("@DateOfMove", dateOfMove);

        cmd1.ExecuteNonQuery();
        con.Close();
        return "";
    }

我的数据库列及其各自的类型是

描述文字
CurrentLocation- 文本
NewLocation- 文本
NewBay- 文本
通过文本请求
MovedBy- 文本
ApprovedBy-Text
DateOfMove- Date/Time

请帮我解决这个错误。我尝试了同样错误的其他线程,但我找不到答案。

尝试从所有参数中删除 @ 并在 SQL 中将所有参数替换为 ?,我认为 Access 不支持命名参数。

我试过这段代码。

dateOfMove = Convert.ToDateTime(dateTimePickerDateOfMove.Text);

这对我有用。