Access 自动编号

LIMINLY520 2011-09-16 10:42:06
在Access 的表中,有一个字段是自动编号的
可以实现
在这个字段到达一定的数据后
自动从1开始编号
这个可以实现的吗???
是不删除原有的数据的
...全文
107 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
LIMINLY520 2011-10-09
  • 打赏
  • 举报
回复
感谢大家的回答啊
现在结贴了哦
LIMINLY520 2011-09-18
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 haihuan23 的回复:]
不能自增,不能主键。 insert的时候 根据 最后的时间 得到 IIIID的值, 再判断是不是255 不是加+1 是就变成1 。很简单的呀
[/Quote]
但是我项目必须是自增的
否则的话
会出问题的
怎样可以在自增的情况下
做这些动作呢
haihuan23 2011-09-17
  • 打赏
  • 举报
回复
不能自增,不能主键。 insert的时候 根据 最后的时间 得到 IIIID的值, 再判断是不是255 不是加+1 是就变成1 。很简单的呀
LIMINLY520 2011-09-17
  • 打赏
  • 举报
回复
怎么又没人了啊
我自己Up一下啊
ACMAIN_CHM 2011-09-16
  • 打赏
  • 举报
回复
自己程序中中先得到select max(id)然后再+1后处理回即可。这些全部需要在你自己的代码中实现,无法在ACCESS端实现。
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 acmain_chm 的回复:]
ACCESS不支持一次提交多个语句,一次只能提交一个,另外也不支持存储过程。
[/Quote]
那有什么好的办法可以实现我说的功能吗?
我只要1到255的排序,中间会有数据被删除的
ACMAIN_CHM 2011-09-16
  • 打赏
  • 举报
回复
ACCESS不支持一次提交多个语句,一次只能提交一个,另外也不支持存储过程。
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 liminly520 的回复:]
引用 6 楼 wwwwb 的回复:
自己动手做一下吧,有问题再问

做了,说是我的from 子句有问题
[/Quote]
string sql = "select IID from IIID if IID>=255 (Update IIID set IID=" + "1" + ") else (insert into IIID(IIIIID) values ('"+"21"+"') )";
这是代码
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wwwwb 的回复:]
自己动手做一下吧,有问题再问
[/Quote]
做了,说是我的from 子句有问题
wwwwb 2011-09-16
  • 打赏
  • 举报
回复
自己动手做一下吧,有问题再问
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wwwwb 的回复:]
1、不用自增,字段有效性规则 设为:<255
2、用自增,插入前SELECT MAX(自增),如果>=255,做相应处理。
[/Quote]
可以有具体的代码吗?
wwwwb 2011-09-16
  • 打赏
  • 举报
回复
1、不用自增,字段有效性规则 设为:<255
2、用自增,插入前SELECT MAX(自增),如果>=255,做相应处理。
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wwwwb 的回复:]
不能,手动,而且已经用过的数字不能出现
ALTER TABLE tblOrder
ALTER COLUMN OrderId COUNTER (1, 1)
[/Quote]
一定要手动吗?
不能在代码里面修改吗?
还是我那个就不能实现的啊
那有什么办法可以实现的啊
我想让它的最大的数是255
该怎么实现的啊
不是自动编号也可以的
wwwwb 2011-09-16
  • 打赏
  • 举报
回复
不能,手动,而且已经用过的数字不能出现
ALTER TABLE tblOrder
ALTER COLUMN OrderId COUNTER (1, 1)
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
我自己UP 一下啊
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 acmain_chm 的回复:]
引用我就是要在代码中实现的
可以给我具体的代码吗?这个建议你到C#版去咨询一下。帮你转过去了。
[/Quote]
谢谢
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 wwwwa 的回复:]
引用 15 楼 liminly520 的回复:
引用 14 楼 wwwwb 的回复:
string sql = "select IID from IIID if IID>=255 (Update IIID set IID=" + "1" + ") else (insert into IIID(IIIIID) values ('"+"21"+"') )";
这是代码
这种语句能 运行吗?
……
[/Quote]
报出
+ $exception {"找不到表或约束条件。"} System.Exception {System.Data.OleDb.OleDbException}
的错误
ACMAIN_CHM 2011-09-16
  • 打赏
  • 举报
回复
[Quote]我就是要在代码中实现的
可以给我具体的代码吗?[/Quote]这个建议你到C#版去咨询一下。帮你转过去了。
WWWWA 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 liminly520 的回复:]
引用 14 楼 wwwwb 的回复:
string sql = "select IID from IIID if IID>=255 (Update IIID set IID=" + "1" + ") else (insert into IIID(IIIIID) values ('"+"21"+"') )";
这是代码
这种语句能 运行吗?

打开记录集
select max(id) a……
[/Quote]
ALTER TABLE tblOrder
ALTER COLUMN OrderId COUNTER (1, 1)
注意 已经用过的数字不能出现,除非删除此条记录
LIMINLY520 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 wwwwb 的回复:]
string sql = "select IID from IIID if IID>=255 (Update IIID set IID=" + "1" + ") else (insert into IIID(IIIIID) values ('"+"21"+"') )";
这是代码
这种语句能 运行吗?

打开记录集
select max(id) as aa from tt
判断 AA是……
[/Quote]
我知道该怎样判断
可是判断完了之后
我想要让自动编号从1开始
这样可行吗?
加载更多回复(3)

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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