关系型数据库和非关系型数据库之间的那些区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关系型数据库和非关系型数据库之间的那些区别相关的知识,希望对你有一定的参考价值。
说说关系型数据库和非关系型数据库之间的那些区别
第一弹
就拿现在最流行的两种数据库来说吧:mysql和mongodb(介于关系型和非关系型之间的一种产品,在这里面我们就当做非关系型数据库用来和mysql比较一下)
举个实际好理解的的例子:学生选课的系统(简化来说举出系统里面的两个:学生,课程)
首先说在mysql里面建立的模型是
学生表(student):
S
Sid |
name |
gender |
age |
address |
|
college |
class |
1 |
张三 |
女 |
19 |
a |
111 |
外语 |
141 |
2 |
李四 |
男 |
20 |
b |
222 |
经管 |
142 |
3 |
王二麻子 |
男 |
21 |
c |
333 |
软件 |
143 |
课程表(class):
C
Cid |
name |
teacher |
1 |
综合日语 |
赵 |
2 |
税法 |
王 |
3 |
商法 |
李 |
4 |
软工 |
孙 |
S与C对应的中间表SC
SCid
|
Sid
|
Cid
|
1
|
1
|
1
|
3
|
2
|
2
|
5
|
3
|
4
|
在mongodb中写这个系统的时候是这样的:
Sid:1,
name:张三,
gender:女,
age:19,
address:a,
email:111,
college:外语,
class:141,
Cid:1
Sid:2,
name:李四,
gender:男,
age:20,
address:b,
email:222,
college:经管,
class:142,
Cid:2
Sid:3,
name:王二麻子,
gender:男,
age:21,
address:c,
email:333,
college:软件,
class:143,
Cid:4
Cid:1,
name:综合日语,
teacher:赵
Cid:2,
name:税法,
teacher:王
Cid:3,
name:商法,
teacher:李
Cid:4,
name:软工,
teacher:孙
假如学号为1的学生又选了一门课号为4的课,学号为2的学生又选了一门课号为3的课
则在mysql里面的SC表里面增加了两个字段最后这个表变成了:
SC
SCid
|
Sid
|
Cid
|
1
|
1
|
1
|
2
|
1
|
4
|
3
|
2
|
2
|
4
|
2
|
3
|
5
|
3
|
4
|
而mongodb里面增加了两个document
Sid:1,
name:张三,
gender:女,
age:19,
address:a,
email:111,
college:外语,
class:141,
Cid:4
Sid:2,
name:李四,
gender:男,
age:20,
address:b,
email:222,
college:经管,
class:142,
Cid:3
以上是在“表”层次上看
下面从查询的方面来看:
以上是关于关系型数据库和非关系型数据库之间的那些区别的主要内容,如果未能解决你的问题,请参考以下文章