数据库期末复习1

数据库期末复习一

数据库和数据系统

  • 数据库系统(DBS)是一个计算机应用系统,它把有关的计算机硬件、软件、 数据和人员组合起来为用户提供数据管理服务。

  • 数据库(DB):计算机中存放的数据集合。

    • 数据库管系统(DBMS):管理数据库的系统软件,是数据库系统的核心。DBMS举例:SQL Server, Oracle, MySQL, DB2……
  • 数据库管理员(DBA):负责数据库的规划、设计、协调、维护和管理等工作。

  • 应用程序(例如MIS):以数据库为基础的应用程序。

注意:

数据库系统的核心是数据库管理系统 ,在上述的几个优势中,都是数据库管理系统(DBMS)发挥着核心作用。所以数据库管理系统是核心的、基础的软件,在软件领域具有重要地位**。**

数据模型

​ 数据模型是数据的抽象表示工具,在不同阶段用不同模型来表示数据。用概念模型描述现实世界中的事物及其联系。用逻辑模型描述数据的结构和操作方式。用物理模型表示数据在计算机上的存储方式。

  • 概念模型独立于计算机系统,只描述某个特定组织所关心的信息结构,是按用户的观点对数据和信息建模,用于数据库设计,是数据库设计人员和用户之间进行交流的工具(实体-联系模型)。
  • 逻辑模型是直接面向数据库的逻辑结构的,用一组严格定义的、无二义性的语法和语义的数据库语言来定义、操纵数据库中的数据。应用程序是基于逻辑模型编程的,每种DBMS都支持一种逻辑模型。
  • 物理模型是对数据最底层的抽象,描述数据在磁盘或磁带上的存储方式和存储方法。

数据库三级模式两级映射

数据库三级模式
  1. 内模式(存储模式)

    ​ 是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。

    一个数据库只有一个内模式。

  2. 模式(整体逻辑模式)

    ​ 用于描述数据库的整体逻辑结构。不涉及数据的物理存储结构和硬件环境,也不涉及具体的应用程序。一个数据库只有一个模式。

  3. 外模式(用户模式)

    ​ 是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的结构。一个数据库可以有多个外模式,如果不同的用户在应用需求上存在差异,则其外模式就是不同的。同一外模式也可以为某一用户的多个应用系统所使用,但一个应用程序只能使用一个外模式。

数据库两级映射
  1. 外模式/模式映射

    • 特征:对于每一个外模式,数据库系统都有一个外模式/模式映射,它定义了该外模式与模式之间的对应关系。
    • 作用:保证数据的逻辑独立性
  2. 模式/内模式映射

    • 特征:模式/内模式映象定义了数据整体逻辑结构与存储结构之间的对应关系。
    • 作用:保证数据的物理独立性

概念模型

​ 概念模型是对现实世界的抽象,通过抽象得到信息实体及实体集之间的联系,所以概念模型也称为实体-联系模型。

基本概念
  1. 实体:可以相互区分的事物。
  2. 实体集:同类实体的集合。
  3. 联系:实体集之间的相互关联。
  4. 属性和值域:属性是实体(或联系)所具有的特征,值域是属性的取值范围。
  5. 型和值。型是实体或联系的结构描述,值是一组属性值的组合。
  6. 候选码:候选码是在一个实体集(或联系集)中可以用于区分不同实体(或联系)的单个属性或若干属性的组合。
  7. 主码:当一个实体集中有多个候选码,可以选定其中的一个作为主码。

数据库建立与管理

  1. 建库
CREATE DATABASE 数据库名
[ON  
 [<filespec>[,...n]]    
 [,<filegroup>[,...n]]   
]
[LOG ON {<filespec>[,...n]}]
[FOR ATTACH] --表示将一个已经存在的数据文件附加为一个数据库

  1. 修改库
ALTER DATABASE 使用据库名
{   ADD FILE <filespec> [,...n] [TO FILEGROUP filegroup_name]
    |REMOVE FILE logical_file_name
    |MODIFY FILE <filespec>
    |ADD LOG FILE <filespec> [,...n]
    |ADD FILEGROUP filegroup_name 
    |REMOVE FILEGROUP filegroup_name 
    |MODIFY FILEGROUP filegroup_name
      {filegroup_property|NAME=new_filegroup_name}
    |MODIFY NAME=new_dbname
    |SET <optionspec> [,...n]
}
  1. 分离数据库
exec sp_detach_db 数据库名

表管理

sqlserver常用数据类型

  1. 整数型

    • 整数:tinyint, smallint, int, bigint 范围从小到大
    • 精确数:decimal, numeric 由整数和小数两部分组成(decimal(4,1)表示3位整数一位小数 000.0 numeric和decimal相同)
    • 浮点数:float, real 近似值,通常用于存放较大的数
    • 货币数据类型:smallmoney, money
  2. 字符型

    • 固定长度字符串:char,nchar
    • 可变长度字符串:varchar,nvarchar
  3. 日期时间型

    • Date:3字节,只存放日期
    • Time:5字节,只存放时间
    • Datetime:8字节,日期范围:1753/1/1~9999/12/31,时间精确到毫秒
    • Smalldatetime:4字节,日期范围:1900/1/1~2079/12/31,时间精确到分。
  4. 逻辑(位)型

    • bit, 输入值0和空表示false,1或非0的数都表示真。
  5. 文本型

    • Text,ntext。分别对应ANSI和Unicode字符,可存储231个字节,突破字符型8000个字节的存储限制。用于存放大量的字符数据。

创建表语句示例

create table [表名] 
 ( 
 [自动编号字段] int IDENTITY (1,1)/*自增*/ PRIMARY KEY/*设置主键*/ , 
 [字段1] nVarChar(50) default \'默认值\' null , 
 [字段2] ntext null , 
 [字段3] datetime, 
 [字段4] money null , 
 [字段5] int default 0, 
 [字段6] Decimal (12,4) default 0, 
 )

表的增删改查

Insert Into(1,列2,…, 列n)
Values (1,值2,…, 值n)
UPDATESET1=1,列2=2,…, 列n=值n
WHERE 查询条件
DELETE FROMWHERE 查询条件

个人博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值