请问sql6.5中的自增字段如何定义,什么情况下才自增?(50分)

  • 主题发起人 主题发起人 peterwang
  • 开始时间 开始时间
定义时用关键字identity指示.
增加记录时会自增
 
我是用acess98作的表,里边已经有一个ID是自增字段,可是导出到sql中后就不自增
了(这个ID不是key也不是premi...),在sql6.5中如何修改字段的identity?
 
agree with eyes, additionally:
1.the type should be a int, smallint or something alike.
2.null is not allowed
3.it usally used for pk
 
要修改成identity, 需要建立临时库, 结构和原库一样, 但id是identity的, 然后
insert into temp_db (f1,f2,f3...) values (select f1,f2,f3... from original)
注意不要选id.
最后把original删除, dbrename temp_db original就可以了.
 
to cytown
出错:

Msg 156, Level 15, State 1
Incorrect syntax near the keyword 'select'.
Msg 170, Level 15, State 1
Line 1: Incorrect syntax near ')'.
 
呵呵,
insert into temp_db (f1,f2,f3...) select f1,f2,f3... from original
 
在7.0中无此问题,定义了acess中的自增字段,再导出到sql 中时依然是自增字段,
但在6.5中就不是自增的了。
 
再问一下:
我把表中的记录全部删除后,再insert记录进表,发现自增字段的内容不是从1开
始,而是从3996开始(3996是前边已被删除的记录总数),如何使后来增加的记录
从1开始?

 
This example shows an identity that begins at 1 and monotonically increases by 1 at a time. This is for the job_id column of the jobs table:

IDENTITY(1,1)


An IDENTITY column can also be used to increase a number by any number from a different starting point. This example shows an IDENTITY column that begins at 144 and monotonically increases by 12 at a time:

IDENTITY(144,12)
 
大家说得很详细了,我就不再多言
 
peterwang: 你要重建一个表才行:-) 很简单的:-)
 
多人接受答案了。
 
后退
顶部