如何自动编号?

fangweng1937 2003-08-24 09:40:48
请教:小弟再做一个电子商务数据库时,想让系统自动为输入的商品编号(即当前最大值加一),不知各位高人有何良策?
顺便问下,在query控件的sql语句里加入"insert into xxxx values(value1,value2,getdate()),执行时总是说"capability not supported",不知何故.

在此先谢过各位了!
...全文
54 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
chl_ccssddnn 2003-08-24
  • 打赏
  • 举报
回复
问题一:
在涉及商品的数据库时,将一个字段设置成“自动编号”类型就可以了(Access),如果是其他数据库也有相应的设置得到这种结果

问题二:
可能是插入的值和字段的类型不匹配造成的
huojiehai 2003-08-24
  • 打赏
  • 举报
回复
这样可以,再完善一下
procedure Tfrm_worker.Btn_addClick(Sender: TObject);
var
id:integer;
begin

with table1 do
begin
Last;
id:=FieldByName('序号').asinteger;
Append;
Edit;
FieldByName('序号').asinteger:=id+1;
Post;
end;

end;

第二个问题是你插入的数据和表中字段类型不匹配
dickeybird888 2003-08-24
  • 打赏
  • 举报
回复
问题1:
先申请一个变量
var s:double;
然后
query1.close;
query1.sql.clear;
query1.sql.add('select max(id) from 表');
query1.Open;
if query1.Recordcount=0 then
s:=1
else
s:=query1.fields[0].asfloat+1;
S为你想要的值

问题2:
可能你对应的字段的值与字段的个数或者类型不匹配

2,495

社区成员

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

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