- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
了解数据库的基本概念及数据库的创建、修改、附加、分离和删除等基本操作等。; 数据库是SQL Server用来存放表和索引等数据库对象的逻辑实体。
SQL Server使用一组操作系统文件来创建一个数据库,数据库中的
所有数据和对象都存储中这些操作系统文件中。
数据库文件主要包括三类:
主数据文件、次数据文件、事务日志文件。
数据文件包含数据和对象。
日志文件包含恢复数据库中的所有事务时所需的信息。
; 主数据文件(后缀为.mdf):每个DB都有一个主数据文件。
该文件包含数据库的启动信息等,并用于存储数据。
次数据文件(后缀为.ndf):次要数据文件是可选的。
这些文件包含不能置于主数据文件中的所有数据。
事务日志文件(后缀为.ldf):每个DB至少有一个日志文件。
这些文件包含用于恢复数据库的日志信息。; 说明; 数据库文件组;首先,文件组允许跨多个磁盘、多个磁盘控制器创建数据库。
其次,文件组允许数据布局,即可以在特定文件组中创建表。
再次,有利于实现备份和还原策略。;例1:如果计算机上有四个磁盘,在每个磁盘上放一个文件,那么可以创建一个由三个数据文件和一个日志文件组成的数据库。当用户对数据进行访问时,磁盘上的四个读/写磁头可以同时并行地访问数据。这一动作加快了数据库操作的速度。;每个数据库中均有一个文件组被指定为默认文件组。
如果没有指定默认文件组,则PRIMARY文件组是默认文件组,除非使用ALTER DATABASE 语句进行了更改。
在数据库中创建对象时如果没有指定对象所属的文件组,对象将被分配给默认文件组。
默认文件组中的文件必须足够大,从而能够容纳未分配给其他文件组的所有新对象。
一次只能有一个文件组作为默认文件组。;2. 数据库对象;表:指具体组织和存储数据的对象。
视图:是从一个或多个基本表中导出的虚拟表。
存储过程:是一组经过编译的可以重复使用的T-SQL语言代码的组合,它在服务器端执行。
触发器:是一种特殊的存储过程,它与表相关联。
索引:为用户提供一种对数据快速访问的途径。
规则:用来实现对特定列进行约束。
默??值:当向表插入数据时,为指定列提供一个默认的数据。;3. 系统数据库;master数据库:
在master数据库的系统表中,记录了SQL Server系统级的信息,这些信息包括所有的登录账号、系统配置信息、所有数据库的信息、所有用户数据库的主文件地址等。
tempdb数据库:
该系统数据库主要用于存放所有连接到系统的用户的临时表和临时存储过程,以及SQL Server所产生的其他临时性的对象。
model数据库:
是系统所有数据库的模板。所有在系统中创建的新数据库在刚创建的时候都和该数据库一模一样。
msdb数据库:
用来保存数据库备份、SQL Agent信息、SQL Server任务等信息,以及诸如日志转移这样的复制信息。
resource数据库:
具有隐藏和只读的特性,只可以从该数据库中读取相应的信息,但是不能够更改其相应的信息。;4. 创建数据库;启动SSMS-对象资源管理器-右击“数据库”-“新建数据库”; 所有参数设置完毕后,单击“确定”按钮,新的数据库就创建成功。展开对象资源管理器中的数据库项,就可以观察到test01数据库已经创建成功。; 默认存放位置:
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data
数据库文件和文件组必须遵循以下原则:
一个数据文件和文件组只能被一个数据库使用;
一个数据文件只能属于一个文件组;
日志文件不能属于任何文件组;
一个数据库至少有一个文件组(Primary),也可以有多个文件组(至多32767个文件组)
在数据库中有且仅有一个为默认文件组,默认情况下主文件组为默认文件组。;方法二:使用命令创建数据库;filespec ::= --filespec语法格式
{ ( NAME = logical_file_name ,
FILENAME = os_file_name
[ , SIZE = size [ KB|MB|GB|TB ] ]
[ , MAXSIZE={ maxsize [KB|MB|GB|TB ] | UNLIMITED }]
[ , FILEGROWTH = growth_increment [KB|MB|GB|TB|%] ]
) [ ,...
文档评论(0)