CREATE TABLE 语句后的 ON [PRIMARY] 起什么作用
2017-07-12 14:36
337 查看
CREATE TABLE [dbo].[table1] (
[gh] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL PRIMARY KEY ,
[gh2] [char] (10) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
比如以上创建表的语句,不知最后的 ON [PRIMARY] 起何用?没有也行呀,为什么?
------解决方案--------------------
指定存储表的文件组。如果指定 filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果指定 DEFAULT,或者根本未指定 ON 参数,则表存储在默认文件组中。
ON {filegroup | DEFAULT} 也可以在 PRIMARY KEY 约束或 UNIQUE 约束中指定。这些约束会创建索引。如果指定 filegroup,则索引将存储在指定的文件组中。如果指定 DEFAULT,则索引将存储在默认文件组中。如果约束中没有指定文件组,则索引将与表存储在同一文件组中。如果 PRIMARY KEY 约束或 UNIQUE 约束创建聚集索引,则表的数据页将与索引存储在同一文件组中。
------解决方案--------------------
创建文件组
在首次创建数据库,或者以后将更多文件添加到数据库时,可以创建文件组。但是,一旦将文件添加到数据库,就不可能再将这些文件移到其它文件组。
一个文件不能是多个文件组的成员。表格、索引以及 text、ntext 和 image 数据可以与特定的文件组相关联。这意味着它们的所有页都将从该文件组的文件中分配。
有三种类型的文件组:
主文件组
这些文件组包含主数据文件以及任何其它没有放入其它文件组的文件。系统表的所有页都从主文件组分配。
用户定义文件组
该文件组是用 CREATE DATABASE 或 ALTER DATABASE 语句中的 FILEGROUP 关键字,或在 SQL Server 企业管理器内的 "属性 "对话框上指定的任何文件组。
默认文件组
默认文件组包含在创建时没有指定文件组的所有表和索引的页。在每个数据库中,每次只能有一个文件组是默认文件组。如果没有指定默认文件组,则默认文件组是主文件组。
你在数据库的属性对话框中,可以查到你的数据库属于哪个文件组.
[gh] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL PRIMARY KEY ,
[gh2] [char] (10) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
比如以上创建表的语句,不知最后的 ON [PRIMARY] 起何用?没有也行呀,为什么?
------解决方案--------------------
指定存储表的文件组。如果指定 filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果指定 DEFAULT,或者根本未指定 ON 参数,则表存储在默认文件组中。
ON {filegroup | DEFAULT} 也可以在 PRIMARY KEY 约束或 UNIQUE 约束中指定。这些约束会创建索引。如果指定 filegroup,则索引将存储在指定的文件组中。如果指定 DEFAULT,则索引将存储在默认文件组中。如果约束中没有指定文件组,则索引将与表存储在同一文件组中。如果 PRIMARY KEY 约束或 UNIQUE 约束创建聚集索引,则表的数据页将与索引存储在同一文件组中。
------解决方案--------------------
创建文件组
在首次创建数据库,或者以后将更多文件添加到数据库时,可以创建文件组。但是,一旦将文件添加到数据库,就不可能再将这些文件移到其它文件组。
一个文件不能是多个文件组的成员。表格、索引以及 text、ntext 和 image 数据可以与特定的文件组相关联。这意味着它们的所有页都将从该文件组的文件中分配。
有三种类型的文件组:
主文件组
这些文件组包含主数据文件以及任何其它没有放入其它文件组的文件。系统表的所有页都从主文件组分配。
用户定义文件组
该文件组是用 CREATE DATABASE 或 ALTER DATABASE 语句中的 FILEGROUP 关键字,或在 SQL Server 企业管理器内的 "属性 "对话框上指定的任何文件组。
默认文件组
默认文件组包含在创建时没有指定文件组的所有表和索引的页。在每个数据库中,每次只能有一个文件组是默认文件组。如果没有指定默认文件组,则默认文件组是主文件组。
你在数据库的属性对话框中,可以查到你的数据库属于哪个文件组.
相关文章推荐
- NET面试题:C#中的using语句有什么作用
- mfc 中的ON_COMMAND有什么作用
- set nocount on的疑问 set nocount on作用 set nocount on什么意思
- 请问SQL语句中go有什么作用?
- Spring中depends-on的作用是什么?
- Spring中depends-on的作用是什么?
- sql语句group by如果没有聚合函数(如count一类的),那它有什么作用
- C++里if语句的return 什么作用
- sql 中的 group by 语句的作用到底是什么啊
- javascript form onsubmit中的return 后面跟一个函数,其中return 起什么作用
- SQL存储过程前面有语句set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ,这是什么意思,数据库存储过程前
- Spring中depends-on的作用是什么?
- python 试题:Python中pass语句的作用是什么?
- @cc_on语句的作用和相关例子
- C#中的using语句有什么作用
- MySQL批量新增语句中ON DUPLICATE KEY 的作用
- ORACLE 里面的LIKE 语句的详细作用格式什么呀
- 大家有没有考虑过这个问题:datagrid分页,viewstate到底起什么作用?
- XmlWriteMode和XmlReadMode的作用是什么?
- CRM对销售管理者有什么作用?