CREATE TABLE [dbo].[SysSample](
[Id] [varchar](50) NOT NULL,
[Name] [varchar](50) NULL,
[Age] [int] NULL,
[Bir] [datetime] NULL,
[Photo] [varchar](50) NULL,
[Note] [text] NULL,
[CreateTime] [datetime] NULL,
CONSTRAINT [PK__SysSample] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (IGNORE_DUP_KEY=OFF) ON [PRIMARY]

)ON [PRIMARY]

注:

CONSTRAINT [PK__SysSample] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (IGNORE_DUP_KEY=OFF) ON [PRIMARY]

)ON [PRIMARY]

这是在Id列上创建一个 唯一聚集索引 的语句。

PRIMARY KEY 表明创建的是主键约束,CLUSTERED 表示索引类型是聚集索引, IGNORE_DUP_KEY=OFF 的作用是向表中插入数据的时候,如果遇到表中已经存在的Id, INSERT 语句就会失败,并且回滚整个INSERT语句。

ON[PRIMARY] 表示是索引创建在文件组上。

【聚集索引】
一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。
聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。
聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚集(物理排序),避免每次查询该列时都进行排序,从而节省成本。
当索引值唯一时,使用聚集索引查找特定的行也很有效率。例如,使用唯一雇员 ID 列 emp_id 查找特定雇员的最快速的方法,是在 emp_id 列上创建聚集索引或 PRIMARY KEY 约束。

最新文章

  1. SQL Server调优系列玩转篇二(如何利用汇聚联合提示(Hint)引导语句运行)
  2. PC互联网和移动互联网的本质差别
  3. 【转】Linux下查看文件和文件夹大小
  4. nginx的反向代理和负载均衡的区别
  5. Ubuntu下装QQ2014
  6. Uart串口与RS232串口的区别
  7. 你应该知道的JavaScript中NaN的秘密
  8. IOS时间格式转换
  9. python django model类型摘要
  10. SPOJ 7258 Lexicographical Substring Search(后缀自动机)
  11. C++函数调用
  12. 团队作业8 ----第二次项目冲刺(Beta阶段)博客汇总
  13. qt pro 设置编译参数,支持 xp
  14. UITabBarController及三种控制器的…
  15. mac环境破解navicat premium 12.1
  16. Linux的历史发展及应用
  17. JSP页面的基本元素
  18. input输入框限制20个字符,十个汉字
  19. [SCOI2007]排列
  20. 【原创】backbone1.1.0源码解析之Model

热门文章

  1. Repeater数据绑定和操作
  2. java加载资源文件
  3. 最强烈推荐-我的java收藏夹(内有国内最好的java论坛)
  4. Django 运行报错 ImportError: No module named 'PIL'
  5. MYSQL开发技巧之行转列和列转行
  6. javascript统计输入文本的简易方法
  7. 【转】对memcached使用的总结和使用场景
  8. 1009 Enigma
  9. Bing必应(Yahoo雅虎)搜索引擎登录网站 - Blog透视镜
  10. FileAccess枚举