Loading...

csdiy网页🔗:https://csdiy.wiki/数据库系统/15445/

讨论区:https://discord.com/channels/724929902075445281/724929902943404074

project参考链接:https://github.com/ysj1173886760/Learning/tree/master/db

一些问题

q1. 数据库与SQL

数据库(DB): 大家都有过下面这样的经历吧?

收到曾经为自己诊治过的牙医寄来的明信片,上面写着“距上次检查已有半年,请您再来做个牙齿健康检查”。
在生日的前一个月,收到曾入住过的旅店或宾馆发来的“生日当月入住优惠”的邮件或者明信片。
在网上商城购物之后,收到内附“推荐商品列表”的邮件。
这可能是因为牙医、旅店或商城的经营者掌握了顾客上一次的就诊日期、生日和购买历史等信息,并且拥有能够从大量汇总信息中快速获取所需信息(比如你的住址或爱好)的设备(计算机系统)。如果利用人工完成同样的工作,真不知道要多长时间呢。

另外,现在所有地区的图书馆都配备了计算机,实现了图书的自动查询。使用该系统,可以通过检索书名或出版年份快速查找出希望借阅的图书的所在位置,以及是否已经借出等信息。正是因为拥有了可以保存图书名称、出版年份以及保管位置和外借情况等信息,并且可以按需查询的设备,才使这一切成为可能。

像这样将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合称为数据库(Database,DB)。将姓名、住址、电话号码、邮箱地址、爱好和家庭构成等数据保存到数据库中,就可以随时迅速获取想要的信息了


数据库管理系统(DBMS): 用来管理数据库的计算机系统称为数据库管理系统(Database Management System,DBMS)。


为什么要使用专用系统(DBMS)来管理数据呢? 我们通过计算机管理数据的时候,通常使用文本文件或者Excel 那样的电子制表软件就可以完成了,非常简单。但也有不足。下面就举几个有代表性的例子。

  • 无法多人共享数据
  • 无法提供操作大量数据所需的格式
  • 实习读写自动化需要编程能力
  • 无法应对突发事故

DBMS 可以克服这些不足,实现多个用户同时安全简单地操作大量数据(图1-2)。这也是我们一定要使用DBMS 的原因。


DBMS的种类:

  • 层次数据库(Hierarchical Database,HDB)
  • 关系数据库(Relational Database,RDB)
  • 面向对象数据库(Object Oriented Database,OODB)
  • XML数据库(XML Database,XMLDB)
  • 键值存储系统(Key-Value Store,KVS)

数据库的结构:
https://pic1.zhimg.com/80/v2-3c15c6220ed6e9ec364a8d4b9d5d320c_1440w.webp


什么是SQL?
SQL是为操作数据库而开发的语言。

它原本是为了提高数据库查询效率而开发的语言,但是现在不仅可以进行数据查询,就连数据的插入和删除等操作也基本上都可以通过SQL 来完成了。


SQL 语句及其种类: SQL 用关键字、表名、列名等组合而成的一条语句(SQL 语句)来描述操作的内容。关键字是指那些含义或使用方法已事先定义好的英语单词,存在包含“对表进行查询”或者“参考这个表”等各种意义的关键字。

  • DDL
  • DML
  • DCL

SQL的基本书写规则: 书写SQL 语句时必须要遵守一些规则。

  • SQL 语句要以分号(;)结尾
  • SQL 语句不区分大小写
  • 常数的书写方式是固定的
  • 单词需要用半角空格或者换行来分隔

------------正文开始---------------

数据库:一组以某种方式相互关联的数据
数据库系统:管理该数据库的软件

1.flat file strawman

get the year that gza want solo