Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1241878
  • 博文数量: 510
  • 博客积分: 20296
  • 博客等级: 上将
  • 技术积分: 4680
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-30 03:58
文章存档

2011年(13)

2010年(92)

2009年(242)

2008年(163)

我的朋友

分类: 数据库开发技术

2009-01-19 02:00:26

    在表中创建一个标识列。此属性与 CREATE TABLE 及 ALTER TABLE Transact-SQL 语句一起使用。
    语法:
  1. IDENTITY [ (seed , increment ) ]

    seed

    装载到表中的第一个行使用的值。

    increment

    与前一个加载的行的标识值相加的增量值。

    必须同时指定种子和增量,或者二者都不指定。如果二者都未指定,则取默认值 (1,1)。

 实例:

  1. --建表,很简单,就不说了
  2. CREATE TABLE [Photos] (
  3.  [PhotoID] [int] IDENTITY (1, 1) NOT NULL ,
  4.  [AlbumID] [int] NOT NULL ,
  5.  [Caption] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
  6. ) 

  7. --清空表
  8. truncate table dbo.Photos
  9. GO

  10. --打开容许对被IDENTITY修饰的列进行插入的开关,默认示关闭的,也就是不容许
  11. set IDENTITY_INSERT dbo.Photos on
  12. insert into Photos(PhotoID,AlbumID,Caption)values(1,1,'maql1')
  13. insert into Photos(PhotoID,AlbumID,Caption)values(1,2,'maql2')
  14. insert into Photos(PhotoID,AlbumID,Caption)values(1,3,'maql3')
  15. insert into Photos(PhotoID,AlbumID,Caption)values(2,1,'zhangr1')
  16. insert into Photos(PhotoID,AlbumID,Caption)values(2,2,'zhangr2')
  17. insert into Photos(PhotoID,AlbumID,Caption)values(2,3,'zhangr3')
  18. go

  19. --关闭IDENTITY_INSERT开关,也就是不容许对这一列进行插入,而是让其自动增长
  20. set IDENTITY_INSERT dbo.Photos off
  21. insert into Photos(AlbumID,Caption)values(1,'maql1')
  22. insert into Photos(AlbumID,Caption)values(2,'maql2')
  23. insert into Photos(AlbumID,Caption)values(3,'maql3')
  24. insert into Photos(AlbumID,Caption)values(1,'zhangr1')
  25. insert into Photos(AlbumID,Caption)values(2,'zhangr2')
  26. insert into Photos(AlbumID,Caption)values(3,'zhangr3')
  27. insert into Photos(AlbumID,Caption)values(3,'maql4')
  28. go

 

参考:

     

      

阅读(869) | 评论(0) | 转发(0) |
0

上一篇:SQL Server 中collate的含义

下一篇:1.SQL Select

给主人留下些什么吧!~~