请教SQL SERVER数据库专家

jury 2000-09-06 04:50:00
ACCESS中有一个“自动编号”数据类型,可以对每一条写入的记录生成唯一不变的记录号。
而SQL SERVER中只有“TIMESTAMP”数据类型,每次修改记录都会改变TIMESTAMP的值,有什么办法可以取得“唯一不变的记录号”呢?
谢谢!
...全文
171 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ljing 2000-09-06
  • 打赏
  • 举报
回复
sql server 7.0中定义一个不为空的字段将“识别”选中,填写识别种子(即从多少开始计数)和识别递增量就可以实现自动编号。注:在程序中不对该字段进行操作。
guoyiqian 2000-09-06
  • 打赏
  • 举报
回复
SQL SERVER 中有"自动编号”数据类型,可以对每一条写入的记录生成唯一不变的记录号.
只要定义字段属性为 integer IDENTITY 即可
如下:CREATE TABLE dbo.test (iden_id integer IDENTITY NOT NULL, --系统流水号
user_id varchar(20) NOT NULL
, CONSTRAINT test_p
PRIMARY KEY NONCLUSTERED
(iden_id)) ;

系统对每个user_id 都会产生一个唯一的系统流水号,且数据类型为 Integer型.
ljing 2000-09-06
  • 打赏
  • 举报
回复
sql server 中有一个和access一样的“自动编号”类型,将字段设为identity即可。
p9 2000-09-06
  • 打赏
  • 举报
回复
也可以用触发器解决.
CREATE TRIGGER TABLE_ID
on TABLE for insert as
declare @id int
begin
select @id=(select case when max(z.id) is not null then max(z.id)+1
else 1
end
from TABLE z)
update z set z.id=@id from YS_DJCLB z,inserted i where z.id=i.id
return
end
leslielu 2000-09-06
  • 打赏
  • 举报
回复
为什么不用它的自动增加的功能,设定Int字段? 这当然是他唯一不变的ID了.
字段的Identity 属性.

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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