起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 344|回复: 16

【搞定】关于实现编号自动加1的问题**

[复制链接]
发表于 2007-8-14 17:11:40 | 显示全部楼层 |阅读模式
我先在sql 数据库中建了一张表:
  //学生信息表(学号自动加1)
create table student
(id int identity(1,1) not null unqiue,
name vachar(12) not null,
sex char(2),
age int);

然后按照以下步骤来做的:

1、根据物理表生成数据字典后,取消种子字段的主键、是否必须、是否唯一三个属性并保存,注意不要创建物理表;

2、在业务信息层,设置数据集的更新选项,取消种子字段的“允许更新”选项;

3、在功能层接管数据导航的保存按钮,即在保存以后再刷新或者关闭、打开数据集,建议使用刷新,它比数据集关闭再打开的速度要快些。比如在数据导航的 AfterAction 事件中实现。代码如下:

procedure TMainForm.DataNavigatorAfterAction(Sender: TObject);
begin
  if TBizDataSetAction(Sender).ID = BizActnConsts.ActionDataSetSave then
        dsTemp.DataSet. Refresh;
end;

问题是:这样做了,在运行的时候还是得自己输入编号才行呀,不然会提示id是必须的,请问这是为什么呀?

先谢了!
回复

使用道具 举报

发表于 2007-8-14 17:13:50 | 显示全部楼层
签入,刷新缓存,试试
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-14 17:18:56 | 显示全部楼层
一个样!
回复 支持 反对

使用道具 举报

发表于 2007-8-14 17:28:59 | 显示全部楼层
您还是仔细看一下啊!
否则我也只能做个例子给你看了。。。
我这就去做例子
回复 支持 反对

使用道具 举报

发表于 2007-8-14 17:41:32 | 显示全部楼层
楼主看例子

1.rar

831.61 KB, 下载次数: 116

回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-14 17:42:46 | 显示全部楼层
有劳了,
谢谢啊!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-14 18:05:05 | 显示全部楼层
按我上面的那些步骤做是吗,不要生成物理表吧
回复 支持 反对

使用道具 举报

发表于 2007-8-14 18:10:36 | 显示全部楼层
不生成物理表,数据表直接保存签入了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-14 18:15:33 | 显示全部楼层
你给我的例子还是一样,要输入id呀
回复 支持 反对

使用道具 举报

发表于 2007-8-15 08:50:07 | 显示全部楼层
你别输入id,输入完名字,直接保存,id会自动产生出来。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-15 06:55 , Processed in 0.043125 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表