初学T-SQL笔记之ON[PRIMARY]

<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

初学T- SQLON[ PRIMARY]

 这些天什么都没做。年前似乎有忙不完的事,年后了却又有了好逸的毛病。。。。

 今天才开始看学校实验指导的开发实例。以前一直没有时间来看。。。

创建表的语句中,最后总来一句 ON[ PRIMARY],这是什么意思?

翻翻联机丛书。在CREATETABLE的语法下似乎没有找到。硬着头皮看下去,终于明白了一些。

写出来吧。侯捷老师说,发表是最好的记忆。:)

在CREATETABLE的语法中有这样一句可选语法项目:
[ ON{filegroup|DEFAULT}]

用来指定存储表的文件组。
如果指定filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果指定DEFAULT,或者根本未指定 ON参数,则表存储在默认文件组中。
(DEFAULT并不是关键字。DEFAULT是默认文件组的标识符并需对其进行定界,如 ON"DEFAULT"、 ON[DEFAULT]。)


ON[ PRIMARY]是表示表是建立在主文件组上。 PRIMARY表示主文件组。如果没有指定默认文件组,则主文件组是默认文件组, ON[ PRIMARY]也可以省略掉了。

由数据库说开来。Microsoft®™2000使用一组文件映射数据库,也可以说将数据库映射到一组操作系统文件上(看你怎么理解了)。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在操作系统文件(数据库文件):主要数据文件、次要数据文件和事务日志文件中。

1.主要数据文件 
该文件包含数据库的启动信息,并用于存储数据。是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是.mdf。


2.次要数据文件
这些文件含有不能置于主要数据文件中的所有数据即包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。(如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足够大故需要多个次要数据文件,或使用位于不同磁盘驱动器上的辅助文件将数据扩展到多个磁盘。)次要数据文件的推荐文件扩展名是.ndf。

3.事务日志文件
该数据库的日志信息。每个数据库都必须至少有一个日志文件。日志文件的推荐文件扩展名是.ldf。

文件组
出于分配和管理目的,可以将数据库文件分成不同的文件组。文件组是 SQLServer2000数据文件的一种逻辑管理单位。 SQLServer中一个或多个文件的命名集合,它构成分配或用于数据库管理的单个单元。在首次建数据库,或者以后将更多文件添加到数据库时,可以创建文件组。文件组不能独立于数据库文件创建。文件组是在数据库中对文件进行分组的一种管理机制。

有两种类型的文件组:主要文件组和用户定义文件组。(可以说,数据库由一个主文件组和任意用户定义的文件组组成。)

1.主文件组( PRIMARY
用户定义文件组默认文件组同为文件组的一种类型。
其包含主要数据文件和任何没有明确指派给其它文件组的其它文件。系统表的所有页均分配在主文件组.
2.用户定义文件组
用户定义文件组是在CREATEDATABASE或ALTERDATABASE语句中,使用FILEGROUP关键字或在 SQLServer企业管理器内的"属性"对话框指定的文件组。

另:默认文件组(DEFAULT文件组)
文件组的一种类型,其包含在创建时没有指定文件组的所有表和索引的页。在每个数据库中,每次只能有一个文件组是默认文件组。如果没有指定默认文件组,则默认文件组是主文件组。可用ALTERDATABASE语句更改默认文件组。通过更改默认文件组,创建时没有指定文件组的任何对象都被分配到新默认文件组中的数据文件。然而,系统对象和表仍然保留在 PRIMARY文件组内,而不是新默认文件组。(每个数据库中都有一个文件组作为默认文件组运行。当 SQLServer给创建时没有为其指定文件组的表或索引分配页时,将从默认文件组中进行分配。一次只能有一个文件组作为默认文件组。db_owner固定数据库角色成员可以将默认文件组从一个文件组切换到另一个。如果没有指定默认文件组,则主文件组是默认文件组。) 1
<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值