01.数据库基本概念

      a. 数据库基本概念
          i. 数据库:是表和数据库访问对象的集合,其中表分别存储了不同的实体信息,每一行数据对应一个实体的描述信息
          i. 实体与记录:
              1. 实体是所有客观存在的,可以被描述的事物
              2. 记录:数据库中存储的数据表格,每一“行”实际上对应一个实体,这样的一行,在数据库中,通常叫做一条“记录”
          ii. 数据库管理系统(DNMS):是一种系统软件,由一个互相关联的数据集合和一组访问数据的程序构成,主要功能是维护数据库,并有效地访问数据库中各个部分的数据
          iii. 数据库系统(DBS):是一个实际可运行的系统,可以对系统提供的数据进行存储、维护和应用,是由存储介质、处理对象和管理系统共同组成的集合体
          iv. 数据冗余:是指数据库中存在一些重复的数据库
          i. 数据的完整性:是指数据库中数据的准确性,数据库允许有一些数据冗余,但是要保持数据的完整性
              1. 准确性:是通过数据库表的设计和约束来实现的
              2. 为了实现完整性,数据库需要做以下两方面的工作
                  a. 检验每行数据是否符合要求
                  b. 检验每列数据是否符合要求
              3. 约束:
                  a. 实体完整性约束:要求表中的每一行数据都反映不同的实体,不能存在相同的数据行
                      i. 索引
                      ii. 唯一约束
                      iii. 主键约束
                  b. 域完整性约束:给定列输入的有效性
                      i. 限制数据类型
                      ii. 检查约束
                      iii. 输入格式
                      iv. 外键约束
                      v. 默认值
                      vi. 非空约束
                  c. 引用完整性约束:用来保持表之间已定义的关系,通过主键和外键之间的引用关系来实现
                  d. 自定义完整性约束:用来定义特定的规则
          i. 列的数据类型
              1. 二进制数据:用来存储非字符和文本的数据
                  a. Binary:固定长度
                  b. Varbinary :可变长度
                  c. Image:可用来存储图像
              2. 文本数据类型:字符数据包括任意字母、符号或数字字符的组合
                  a. Char :固定长度的非 Unicode 字符数据
                  b. Varchar :可变长度的非 Unicode 字符数据
                  c. Nchar :固定长度的的 Unicode 字符数据
                  d. Nvarchar :可变长度的的 Unicode 字符数据
                  e. Text :存储长文本信息
                  f. Ntext:存储可变长度的长文本
              3. 日期和时间数据类型:用于存储日期和时间
                  a. Datetime :时间格式的类型
              4. 数字数据类型:该数据仅包含数字、包括正数、负数以及分数
                  a. Int 、smaliint、tinyint、bigint:整数
                  b. float、real:浮点数
              5. 货币数据:money
              6. Bit 数据类型:bit(存储布尔数据类型)
          ii. 主键和外键
              1. 主键:用来标识表中每一行的唯一标识符,使用主键时需要保持最少性和稳定性
                  a. 最少性:是指列数最少的键,如果可以从单个主键和组合主键中选择时,应该选择单个主键
                  b. 稳定性:是指列中数据的特征,由于主键通常用来在两个表之间建立联系,所以主键的数据不要经常更新,理想情况下,应该永远不改变
              2. 外键:相对于主键而言,他就是“子表”中对应于“主表”的列
 

 

posted @ 2017-09-24 21:22  Wesley.Liang  阅读(288)  评论(0编辑  收藏  举报