在sql 数据库中插入日期型数据出错“没有执行可选特性”,什么意思

jijing 2003-03-08 08:47:14
var
row,i:integer;
begin
with dm_book.jtemp do
begin
close;
sql.Clear;
sql.Add('insert into book_sale(orders_id,book_id,book_code,book_name,sale_quantity,book_price,sale_summoney,card_no,sale_time) ');
sql.Add('values (:orders_id,:book_id,:book_code,:book_name,:sale_quantity,:book_price,:sale_summoney,:card_no,:sale_time)');
//,book_position,adminuser
//,:book_position,:adminuser
parameters.ParamByName('orders_id').Value:=888;
parameters.ParamByName('book_id').Value:=666;
parameters.ParamByName('book_code').Value:=StringGrid1.Cells[0,1];//条形码
parameters.ParamByName('book_name').Value:='sdfsdf';stringgrid1.Cells[1,1];//书名
parameters.ParamByName('sale_quantity').Value:=strtoint(stringgrid1.Cells[6,1]);//'数量
parameters.ParamByName('book_price').Value:=strtofloat(stringgrid1.cells[4,1]);//单价
parameters.ParamByName('sale_summoney').Value:=strtofloat(stringgrid1.Cells[7,1]);//金额
parameters.ParamByName('card_no').Value:=888; //FormatDateTime
parameters.ParamByName('sale_time').Value:=strtodate('2002-2-2');
{parameters.ParamByName('book_position').Value:=stringgrid1.Cells[8,1];//位置
parameters.ParamByName('adminuser').Value:='888';
}prepared;
execsql;
beep;
Button5.Click;
end;
{for row:=1 to stringgrid1.RowCount do
for i:=0 to stringgrid1.ColCount do
begin

end;
}end;
...全文
110 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fancier 2003-03-08
  • 打赏
  • 举报
回复
试试在‘//’这句前加上下面的代码
Parameters.ParamByName('sale_time').DataType :=ftDate;
parameters.ParamByName('sale_time').Value:=date;//
jijing 2003-03-08
  • 打赏
  • 举报
回复
parameters.ParamByName('sale_time').asDateTime

参数没有asdatetime的属性 :)
bluemeteor 2003-03-08
  • 打赏
  • 举报
回复
parameters.ParamByName('sale_time').asDateTime:=strtodate(edit1.text);//
jijing 2003-03-08
  • 打赏
  • 举报
回复
parameters.ParamByName('sale_time').Value:=date;//error
parameters.ParamByName('sale_time').Value:=EncodeDate(2002,2,2);//error
parameters.ParamByName('sale_time').Value:='2002-2-2';//error
parameters.ParamByName('sale_time').Value:=now;//error
parameters.ParamByName('sale_time').Value:=strtodate(edit1.text);//error

???????为什么?谢谢
'sale_time'字段在sql2000中是datetime类型

fancier 2003-03-08
  • 打赏
  • 举报
回复
//parameters.ParamByName('book_name').Value:='sdfsdf';stringgrid1.Cells[1,1];//书名                          ~~~~~~~~~~
上面标示的地方你是注销了吧?

在数据库里面,你的时间字段是什么类型?
ghui 2003-03-08
  • 打赏
  • 举报
回复
parameters.ParamByName('sale_time').Value:=EncodeDate(2002,2,2);
yzykjh 2003-03-08
  • 打赏
  • 举报
回复
parameters.ParamByName('sale_time').Value:='2002-2-2';

2,508

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧