数据库和表

数据库和表

3.1基本概念

1、逻辑数据库(数据元素之间的逻辑关系)(1)数据库对象

组成数据库的逻辑成分,包括表、视图、索引、存储过程、触发器、约束等。

  1. 完全限定名(对象的全名)

服务器名.数据库名.数据库架构名.对象名server.database.scheme.object

  1. 部分限定名(省略完全限定名中的某些部分)

server...object

 scheme.object

 object

  1. 系统数据库和用户数据库

(1)系统数据库

用于存储SQL Server有关的系统信息,如果删除,SQL Server将无法正常启动。

master∶记录SQL Server实例的所有系统信息;

model∶为新建的数据库提供模板;

msdb∶用于SQL Server代理计划报警和作业;

tempdb存储临时表和临时存储过程。

每个数据库都包含主数据文件(.mdf)和主日志文件(.Idf)

(2)用户数据库

用户创建的数据库,结构与系统数据库相同。

3、物理数据库

是存放数据的实体,描述数据在存储介质上的物理组织

(1)页和区

页是SQL Server中用于数据存储的基本单位,每个页大小为8KB;

每页开头是96B用于存储有关页的系统信息的标头;

数据库表中的每行数据都不能跨页存储,即每一行数据字节个数不能超过8192个;

区是用于管理空间的基本单位,每8个连接的页组成一个区(64K);

区用于控制表和索引的存储。

(2)数据库文件

· 主数据文件(mdf)用于存储数据,并且包含了数据库的启动信息,每个数据库有且只有一个主文件;

· 辅助数据文件(.ndf)∶ 用于保存未在主文件中的其他数据,可有可无;

·日志文件(.ldf)∶用于保存恢复数据库所需的日志信息,每个数据库至少有一个日志文件;

(3)数据库文件组

· 主文件组∶ 包含主数据文件和未指派给其他组的数据文件;

· 用户定义的文件组(可有可无)。

PS∶文件组的成员只能是数据文件。

4、表

由行和列构成的用于表示数据及关系的集合。

· 表结构(表型)∶组成表的字段名及数据类型;

· 记录∶表中的一行数据称为一条记录;

·字段∶ 构成记录的每个数据项称为字段;

·关键字∶能唯一标识记录的某个字段或字段的组合;

· 主键∶若表中有多个候选关键字,可选其中一个作为主键。

3.2操作数据库

  1. 界面方式操作数据库
  2. 命令方式操作数据库

(1)创建数据库

CREATE DATABASE db_name

【ON 子句】-->指定数据库文件和文件组属性

【LOG ON 子句】-->指定日志文件属性

e.g.创建数据库DB1,数据文件data1.mdf位于主文件组中,data2.ndf在文件组FG1中

CREATE   DATABASE   DB1

ON

(

              NAME = "datal",

              FILENAME = "F: \data\sql_data\datal.mdf",

              SIZE=20MB

               MAXSIZE=UNLIMITED,

               FILEGROWTH=10%

)

,

FILEGROUP   FG1

(

             NAME = "data2",

             FILENAME = "F: \data\sql_data\data2.ndf"

)

LOG ON

(

            NAME="datal_log",

            FILENAME = "F:\data\sql_data\datal_log.ldf"

)

(2)修改数据库

ALTER DATABASE db_name

 ADDFILE子句:添加数据文件

ALTER   DATARASE   DR1

 ADD  FILE

(

             NAME = "data4",

             FILENAME = "F:\data\sql_data\data4.ndf",  

             SIZE = 20MB,

             MAXSIZE=200MB.

             FILEGROWTH=10%

)

TO   FILEGROUP  FG1

 G0

ADD LOG FILE子句:添加日志文件

ALTER   DATABASE   DB1

 ADD    LOG    FILE

(

              NAME = "data2_log",

              FILENAME = "F:\data\sql_data\data2_log.ldf",

              SIZE=10MB,

              MAXSIZE=100MB,

              FILEGROWTH=10MB

)

GO

REMOVE  FILE子句:删除文件

ALTER  DATABASE  DB1 

REMOVE  FILE  data4

GO

ADD FILEGROUP子句:添加文件组

ALTER  DATABASE  DB1

ADD   FILEGROUP  FG2

REMOVE FILEGROUP子句:删除文件组

ALTER  DATABASE  DB1

 REMOVE  FILEGROUP  FG2

PS∶若文件组不为空,则不可直接删除

MODIFY FILE子句:修改文件属性

ALTER  DATABASE  DB1

MODIFY  FILE

(

                NAME = "data2",

                SIZE=100MB,

                MAXSIZE=500MB,

                FILEGROWTH=10%

)

MODIFY FILEGROUP子句∶修改文件组属性

 ALTER  DATABASE  DB1

 MODIFY  FILEGROUP  FG1

READ_ONLY

GO

MODIFY NAME子句∶ 修改数据库名字

ALTER  DATABASE  DB1  

MODIFY  NAME=DB2

GO

SET子句:设置数据库属性

ALTER  DATABASE  DB2

SET 

READ_ONLY

(3)数据库快照

CREATE  DATABASE  DB3

ON

(

              NAME = "datal",

              FILENAME = "F:\data\sql_data\data_1.mdf"

),

(

              NAIE = "data2",

              FILENAME = "F:\data\sql_data\data_2.ndf"

)

AS  SNAPSHOT  OF  DB2

PS:

  1. 在创建数据库快照时,文件属性中的逻辑文件名须跟源数据库中的文件名一致;
  2. 在创建数据库快照时,无需指定日志文件属性,即数据库快照只保存数据文件。
  3. 在创建数据库快照时,不能给数据文件指定文件组。

(4)删除数据库

DROP  DATABASE  db_name

DROP  DATABASE  DB2

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

傻傻的心动

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值