public string bookno(string id, string un, DateTime date, string time, string reason)
{
using (OleDbConnection source = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
Environment.CurrentDirectory + "\\IOOPAssignment.accdb"))
{
OleDbCommand insert = new OleDbCommand();
insert.CommandText = "INSERT INTO [Pending_List] Values('" + id + "','" + un + "','#" + date + "#','" + time + "','" + reason + "','Nothing',0,'Pending')";
source.Open();
insert.Connection = source;
insert.CommandType = System.Data.CommandType.Text;
insert.ExecuteNonQuery();
return "Success";
}
}
ошибка:
System.Data.OleDb.OleDbException: 'Несоответствие типов данных в выражении критериев.'
Как решить эту проблемуошибка?
измененный код:
public string bookno(string id, string un, DateTime date, string time, string reason)
{
using (OleDbConnection source = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
Environment.CurrentDirectory + "\\IOOPAssignment.accdb"))
{
source.Open();
using (OleDbCommand insert = source .CreateCommand())
{
// create command with placeholders
insert.CommandText =
"INSERT INTO [Pending_List] " +
"([Class_ID], [User_ID], [Date], [Time], [Reason],[Description],[Add_Req],[Room_Status]) " +
"VALUES(@id,@un,@date,@time,@reason,@describe,@add,@status)";
// add named parameters
insert.Parameters.AddRange(new OleDbParameter[]
{
new OleDbParameter("@id", id),
new OleDbParameter("@un",un),
new OleDbParameter ("@date",date),
new OleDbParameter ("@time",time),
new OleDbParameter ("@reason",reason),
new OleDbParameter ("@describe", "Nothing"),
new OleDbParameter ("@add",0),
new OleDbParameter ("@status","Pending")
});
// execute
insert.ExecuteNonQuery();
return "Success";
}
и ошибка System.InvalidOperationException: 'Параметр [6]: свойство OleDbType неинициализировано: OleDbType.Empty.'