【求助】当前操作中使用了错误类型的值!

时间:2021-01-12 08:10:19
数据库: 【求助】当前操作中使用了错误类型的值!
代码:
procedure TBooking.Button1Click(Sender: TObject);
begin
   with adoquery1 do
  begin
  try
    close;
    sql.Clear;
    sql.Add('insert into Book values(:t,:p,:e,:n,:i,:o,:m)');
    Parameters.ParamByName('t').Value:=date;
    Parameters.ParamByName('p').Value:=edit1.Text;
    Parameters.ParamByName('e').Value:=combobox2.Text;//出错行
    Parameters.ParamByName('n').Value:=combobox1.Text;
    Parameters.ParamByName('i').Value:=datetimepicker1.DateTime;
    Parameters.ParamByName('o').Value:=datetimepicker2.DateTime;
    Parameters.ParamByName('m').Value:=LogIn.Edit1.Text;
    ExecSQL;
  except
    showmessage('数据处理异常!');
  end;
  end;
end;

5 个解决方案

#1


编号类型是自动编号的

#2


insert into book (全部要有数据的字段名)
没有写括号内的内容,对数据库而言就是全部。
于是自动编号的部份会出错。
说不定还有别的也会出错。

#3


insert into Book(预约时间,预约人,房间类型,房间号,入住日期,退房日期,操作人) values(:t,:p,:e,:n,:i,:o,:m)

#4


本帖最后由 bdmh 于 2013-09-11 13:02:33 编辑
into后面指定列名,否则会算上编号列

#5


路过学习,楼上的已经讲清楚了

#1


编号类型是自动编号的

#2


insert into book (全部要有数据的字段名)
没有写括号内的内容,对数据库而言就是全部。
于是自动编号的部份会出错。
说不定还有别的也会出错。

#3


insert into Book(预约时间,预约人,房间类型,房间号,入住日期,退房日期,操作人) values(:t,:p,:e,:n,:i,:o,:m)

#4


本帖最后由 bdmh 于 2013-09-11 13:02:33 编辑
into后面指定列名,否则会算上编号列

#5


路过学习,楼上的已经讲清楚了