问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据库一词的起源?

发布网友 发布时间:2022-04-30 13:37

我来回答

2个回答

懂视网 时间:2022-05-02 16:42

信息系统

现在需要开发一套信息系统, 记录系里的学生、课程、 还有选课信息。比如

  • 学生信息:[学号,姓名,性别,身份证号,入学日期,班级]
  • 课程信息:[课程号,课程名,授课老师]
  • 选课:[学号,课程号,成绩]
  • 可以使用三个独立的文本文件来存储这些信息,比如学生信息:
    技术分享图片

    然后程序只需要读写这三个文件就可以了。

    中间层的引入

    到了期末,各个老师希望能进行一些统计的工作,比如哪些人不及格,某学科的平均分等等。实际上就是对文件进行查询而已。如果每次都使用程序来进行操作,非常麻烦,而且不利于普及。

    所以我们可以提供一个中间层,把文件层屏蔽掉,让每个人都可以在这个中间层用简单的方法进行查询。我们把数据存放的结构叫,每一列叫列、字段、属性
    可以使用简单的SQL语句就能查询

    SELECT 学号,姓名 
    FROM 学生信息 
    WHERE 入学日期=‘1991-9-1‘

    然后需要一个解析器,可以把语句转换为内部对文件的操作。这样还可以使用程序来调用抽象层来编程啊, 也不用直接操作文件了

    使用这样的SQL语句最大的好处是用户完全不用考虑物理层的那些文件的结构,只需要关注逻辑层的“表”就可以了。
    技术分享图片

    中间的逻辑层的另外的好处是可以对物理层的文件存储进行优化了, 为了加快访问速度, 可以增加了索引、B+树,缓存等手段。

    总结起来,中间层的好处在于:

  • 对用户屏蔽了底层逻辑,只需要通过SQL语句就可以进行操作了。
  • 还可以对物理层的文件存储进行优化,加快访问速度。
  • 并发访问

    之前的访问都是单机版的,但是如果有若干的客户端连入呢?可能会存在

  • 两个客户端同时对一个文件进行修改,所以后修改的会完全覆盖前人的修改。
  • 两个客户端同时对一行数据进行修改,会出现数据不一致。
  • 那么怎么办呢?

  • 基于文件的操作改变成基于行的操作, 每个人的修改只影响这一行。 这样纵然两个人同时修改一个文件,只要不在同一行都没毛病。
  • 修改某行数据的时候,要先给这一行加。也就是一个人修改的时候,不允许另一个人修改。
  • 原子性问题

    现在我们已经解决了并发写的带来的数据不一致的问题,那么还有没有其他的风险点呢?系统故障

    比如电子系有1000元, 数学系有2000元
    电子系给数学系转账200元, 系统先扣除了电子系的钱,现在余额只有800 ,此时系统崩溃了。
    重启以后,就发现电子系的余额是对的, 可是数学系还是2000元, 那200元丢了

    所以转账的操作必须是原子的: 要么全部发生, 要么根本不发生。
    可以把类似转账这样的操作叫做“事务”, 但是怎么实现呢?记录日志 

    在做真正的操作之前,

  • 先记录日志:要修改哪一项,原来的值是什么,现在的值是什么
  • 然后再修改
  • 只有所有的操作都正确无误写入了磁盘,才会提交。否则就回滚
  • 权限管理

    一个没有权限控制的系统是非常危险的, 尤其是随意删除。
    先定义三大类权限:

    1. 对数据操作的, 例如SELECT, UPDATE, INSERT等
    2. 对结构操作的, 例如创建表,修改表,等
    3. 做管理的, 例如备份数据, 创建用户等

    然后就可以把这些权限授予某个用户了

    GRANT SELECT on 财务表 to 系主任 #只能查询。
    GRANT CREATE_TABLE to 张老师:#可以创建表格

    这个系统的中间层完全可以剥离出来,形成一个完整的软件了,也就是数据库

    技术分享图片

    参考

  • 小李的数据库之旅(上)

  • 小李的数据库之旅(下)

  • 数据库(二),数据库起源

    标签:提交   物理   通过   create   rect   操作   日志   存在   sele   

    热心网友 时间:2022-05-02 13:50

    “数据库”起源于20世经90年代,当时美国为了战争的需要,把各种情报收集在一起,存储在计算机,叫做Data Base(DB).
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    轻度慢性萎缩性胃炎 活动期,伴轻度肠 化 胃角多发糜烂。医生说了我... 胃窦粘膜慢性轻度萎缩性炎伴轻度肠化胃窦粘膜慢性轻度萎缩性炎? 芬兰留学读研费用是多少 芬兰留学读研时间 去芬兰留学学费生活费一年要多少 芬兰留学读研费用是多少? 芬兰留学读研学费多少? 感冒好多天了,可不可以打蓝球或者其它运动出出汗啊? 感冒打喷嚏,鼻塞然后可以让自己多出出汗吗 宝宝感冒了能去游泳吗 GTA5用什么加速器比较好? GTA5线上模式要加速器吗? 有没有人给我做个选择,我选择困难症犯了,请问是三星A70手机好,还是新品vivo iQOO手机好? 数据结构的起源是什么 三星手机A70与A90那个摄映好? 有没有可以在QQ语音聊天时,一边打字,另一边把文字变成声音输出呢 QQ接收文字消息变成语音阅读 我刚才用QQ跟别人聊天结果不知道按到什么东西了就是只能发语音不能转发文字了? QQ里面打字模式里面的语音识别文字为什么我的变成了语音? 为什么?QQ说话中里。你按一下去说出去的话就会直接变成语音发出去。 为什么在qq语音键盘说话的时候会转语音,不是文字。??? 传说法师强化技能是什么 传说法师技能强化方 丝路传说罗马法师PK最强技能加点? 《星尘传说》法师什么玩才最强 加技能点 升级 装备==啊 思路传说罗马法师练什么技能最厉害? 《传说法师》游戏玩法介绍 传说法师混沌技能哪个好用 全混沌技能伤害图 《传说法师》技能连发操作技巧 怎么连发 传说法师通关流派推荐 传说法师通关用哪些流派好 传说法师全法系实用法术推荐 传说法师哪些法 新入手的about me 柠檬按摩膏,求使用方法(是使用卸妆水之前使用还是之后使用,用完按摩膏后用 gta5的问题? 数据来源 柠檬海盐按摩霜怎么盖盖子? 柠檬按摩膏真的排毒吗 韩国 柠檬排毒祛黄亮白面部按摩膏好用吗 柠檬排毒按摩膏可以一天用两次嘛 about me柠檬排毒按摩膏怎么样 韩国柠檬按摩膏排出来黄黄的是毒素吗 abouteme柠檬按摩膏的正确用法? 植物日记柠檬亮肤按摩霜谁用过,感觉怎么样? 微信聊天背景设置了。想取消怎么弄?请解答? ipad和平精英录屏开启权限 为什么刺激战场开启不了录屏功能?ios 上海所有教堂 苹果手机和平精英自由录制不给权限怎么办? 你好,我想问下,我们家现在的房子是以前买大队里的老宅基地。当时付了一万块钱,只是没有房产证和宅基证 苹果8手机,和平精英录制如何把自己和队友.游戏声音一起录进去 沙面建筑风格的特点 广州那里有基督教会可以入的