(E-R图)实体-联系图(数据模型)
文章目录
- 一、数据模型(也叫信息模型)
- 1、数据对象
- 2、属性
- 3、联系(关系)
- 4、ER图表示符号
- 二、数据规范
- 三、简单实例
一、数据模型(也叫信息模型)
数据模型包含三种互相关联的信息:数据对象、数据对象的属性、以及数据对象彼此间相互连接的关系
1、数据对象
定义:对软件必须理解的复合信息的抽象。
复合信息:即具有一系列不同性质或属性的事物,仅有单个值的事物不是数据对象。
2、属性
属性定义了数据对象的性质。必须把一个或者多个属性定义为“标识符”,用标识符属性作为“关键字”(简称“键”)
3、联系(关系)
联系:一对一,一对多,多对多等
联系也可能有属性,例如:
学生“学”某门课程的成绩不属于学生也不属于课程,而是因为“学”这个联系产生的属于“学”的属性。
4、ER图表示符号
实体(数据对象):矩形框
关系:连接相关实体的菱形框
属性:椭圆或者圆角矩形
二、数据规范
第一范式:每个属性值都必须是原子值,即仅仅是一个简单值不可再拆分
第二范式:满足第一范式,并且每个非关键字属性都由整个关键字决定,而不是关键字一部分
第三范式:符合第二范式,每个非关键字属性都仅由关键字决定,且一个非关键字属性值,不依赖于另一个非关键字
三、简单实例
公司管理ER图:
绘梨衣のsukura: 请问找到解决方法了吗,我也遇到类似的问题了
绘梨衣のsukura: 有大佬知道吗,有偿请教
绘梨衣のsukura: 在运行test.py时遇到如下问题: Traceback (most recent call last): File "D:\GaitSet-master\test.py", line 35, in <module> m = initialization(conf, test=opt.cache)[0] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\GaitSet-master\model\initialization.py", line 57, in initialization train_source, test_source = initialize_data(config, train, test) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\GaitSet-master\model\initialization.py", line 15, in initialize_data train_source, test_source = load_data(**config['data'], cache=(train or test)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\GaitSet-master\model\utils\data_loader.py", line 42, in load_data pid_list = np.load(pid_fname, allow_pickle=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\Lib\site-packages\numpy\lib\npyio.py", line 436, in load raise EOFError("No data left in file") EOFError: No data left in file
chongchong0310: Traceback (most recent call last): File "D:\python\GaitSet-master\test.py", line 36, in <module> m = initialization(conf, test=opt.cache)[0] File "D:\python\GaitSet-master\model\initialization.py", line 66, in initialization train_source, test_source = initialize_data(config, train, test) File "D:\python\GaitSet-master\model\initialization.py", line 22, in initialize_data train_source, test_source = load_data(**config['data'], File "D:\python\GaitSet-master\model\utils\data_loader.py", line 26, in load_data seqs = os.listdir(_seq_dir) # 遍历出所有的轮廓剪影 NotADirectoryError: [WinError 267] 目录名称无效。: 'D:\\python\\123\\fyc\\00_1\\fyc-00_1-001.png' 这是什么原因呢
溢出的vector: 实际上是按照最多的一个来计算的,比如用例中,运输方式有2种,重量有三种,那么可以把运输方式看为三种(地、空、不运送),这两组组合应该有3^2=9种,而不运送情况对应的重量没有意义,可以不写出来(最终都要简化判定表),希望能帮助到你