数据库基础总结

1、数据库体系结构

数据库由三个模式,两个映像构成,
  • 外模式:单个用户所看到的局部数据的逻辑结构和特征的描述
    • 外模式/模式映像:定义了外模式与概念模式之间的对应关系,保证了数据与用户程序的逻辑独立性。
  • 概念模式:数据库中全体数据的逻辑结构和特征的描述
    • 模式/内模式映像:定义了概念模式与内模式之间的对应关系,保证了数据与程序的物理独立性
  • 内模式:数据物理结构和存储方式的描述


2、关系数据模型
数据模型三要素:
  1. 数据结构
  2. 数据操作
  3. 数据的完整性约束
    1. 实体完整性:关系模式R的主码的属性不可取空值
    2. 参照完整性
    3. 用户自定义完整性:针对某一具体数据的约束条件,反映某一具体应用所涉及的数据必须满足的特殊语义,例如:人的年龄不可能>1000


3、关系数据库语言


插入日期使用cast函数。
cast函数:将某种数据类型的表达式显式转换为另一种数据类型
例如:Insert Into Student
          Values ('s005', 'Jack' , 22 , 'M' , cast('1981/03/18' as datetime));
提问:若要将一个已有表中的数据全部插入到同结构的另一张表中。
• 例:假设表Student和表Student1的列数目、各列类型和顺序都是一样的,现将表Student中的数据(不止一条)全部插入到表Student1中,如何处理?
insert into Student1
select * from Student;
注意:前提是:表Student1在数据库中已创建成功。

  • 1、插入新记录到基本表中
    • Insert Into <表名> (列名1,列名2,……,列名n)
    • Values(值1,值2,……,值n)
    • 例子:
      • Insert Into Student
      • Values ('s002', 'Mike', 21, 'M');
  • 2、修改表中的数据
    • Update <表名>
    • Set <列名1>=<值1>,<列名2>=<值2>,……
    • Where <条件>
    • • 将符合<条件>的记录的一个或多个列设置新值
    • 例子:例1:将学生John的性别改为‘F’,年龄改为23
      • Update Student
      • Set sex='F', age=23
      • Where sname= 'John';
  • 3、删除表中的记录
    • Delete From <表名>
    • Where <条件>
    • 将符合<条件>的记录从表中删除
    • 例1:从数据库中删除学号为s001的学生
      • Delete From Student 
      • Where s# = 's001';
  • 4、Select查询结构
    • Select <列名表> --指定希望查看的列
    • From <表名列表> --指定要查询的表 on 表1.a=表2.b
    • Where <条件> --指定查询条件
    • Group By <分组列名表> --指定要分组的列
    • Having <条件>--指定分组的查询条件
    • Order By <排序列名表> --指定如何排序

  • WHERE子句中的关系运算符
  • • 算术比较符:>, <, >=, <=, =, <>
  • • IN
  • • IS NULL和IS NOT NULL
  • • LIKE
  • • EXISTS
    • 例子:LIKE:查询姓名的第一个字母为'R'的学生
    • – Select * From Student Where sname LIKE
    • 'R%';
    • • %:任意长度的字符串
    • • _:单个字符
    • – 查询姓名的第一个字母为‘R’并且倒数第二个字
    • 母为'S'的学生
    • • Select * From Student Where sname LIKE 'R%S_';
    • – 提问:查询姓名包含字母为‘R’的学生
    • • Select * From Student Where sname LIKE '%R%';


  •   多个比较式可用NOT、AND和OR连接
  • – Select * From Student
  • Where age IS NULL and sname LIKE 'R%';



5、使用聚集函数
– Count(列名):对一列中的值计数
– Count(*):计算记录个数
– SUM(列名):求一列值的总和(数值)
– AVG (列名):求一列值的平均值
– MIN (列名):求一列值的最小值
– MAX (列名):求一列值的最大值     








2、数据库设计步骤:
  • 需求分析
  • 概念设计
  • 逻辑设计
  • 物理设计
  • 数据库实施
  • 数据库运行与维护


























  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值