回 帖 发 新 帖 刷新版面

主题:[讨论]关于数据库的两句话是否正确?

1、数据库系统中,数据的物理结构必须与逻辑结构一致。
2、数据库系统是一个独立的系统,但是需要操作系统的支持
这两句话中有一句是错误的,但我觉得两句都是错的,请高手们给解释一下。

回复列表 (共13个回复)

沙发

我觉得第2句是对的,比如没有windows怎么安装vfp啊?

板凳

数据库系统的概念好像是说它是在计算机系统中引入数据库后形成的系统,它应包括数据库,数据库管理系统,数据库应用系统及其开发工具,操作系统,还有开发和使用数据库应用系统的各类人员.
所以说,数据库系统中应包括操作系统.而第二句话显示没有把操作系统包含在内.因此,我觉得第二句话不对.
第一句话,我认为是对的.但心里没底.
乞望高手们不吝赐教!

3 楼

第一句是错误的:记录和索引就是最好的例子

4 楼

楼上说的有道理,但我还是觉得第一句话正确,因为虽然物理结构是指数据的存储结构,但一定的逻辑结构必需有相应的物理结构支持.即一定的逻辑结构对应一定的物理结构.

5 楼

1是错误的,举个例子,一般的表格状关系型数据库,也可以用来组成逻辑上是树形的数据库
比如这个结构
ID,Parent_ID,DEPT
ID    表示部门代码
Parent_ID   表示上级部门代码
DEPT     表示部门名称

这就是一个典型的逻辑为树形结构的数据表,而的确是使用了关系型数据库的物理载体。

6 楼

谢谢楼上先生的讨论.不过您所说的最后句"使用了关系型数据库的物理载体"我觉得仍有问题,因为,关系型数据库本身也是由逻辑结构和物理结构两部分组成,树形结构属于逻辑结构,数据表它也是逻辑层面上的东西.
最大的问题是这是一个二选一的问题,要说1错,那就是说2是对的,但我认为2确实不对,因为,我认为数据库系统它不是一个独立的系统,它是由操作系统支持,由应用程序开发人员,用户,数据库,数据库管理系统,数据库应用程序开发工具等组成的一个复合系统,所以说2是错的,那反过来说,1就是对的.我只是对1为什么是对的没有一个清晰的思路.
欢迎高手们继续指点1

7 楼

在表格型的数据库出现之前,还有其他类型的数据库,典型的就是树形和文件型,文件型属于没有结构的结构,什么结构都可以实现,由程序来解读数据,比如刚学C语言的时候,老师教我们如何拿一串字符写入文件,然后读取。这种数据就是文件型的,取出来之后必须用程序分割成字段。

而树形这种结构由来已久,Windows的注册表就是这样一个典型的结构。

像FoX这种表格型的数据库,是后来才出现的,表格型的数据库才被称为关系型数据库。

像SQL-SERVER这样的数据库,即使是表格型的表,内部的物理组织形式是逻辑上的链表结构,而非FOX这样简单的顺序记录文件。但是对于用户来说,隐藏了技术细节,面对的只是一个表格。

说到独立结构,应该看他的服务目标,在他提供的范围内,有全套的数据存储、使用的功能,那他就是独立的,去追究他的底层是否调用操作系统,是没有必要的,如果真的想这么追究,那么其实就算Windows,也不能算独立系统,其底层还要调用BIOS,而BIOS还要调用CPU的指令系统,而指令系统有时还会调用浮点处理器的固件代码。

8 楼

如果把视角仅限于关系型数据库,说到逻辑结构和物理结构,其实你没有真正理解他们的含义,物理结构是存储结构,是数据库系统提供给你的最直观的东西,我们不管他在硬盘上怎么实现,最后系统给我的就是一张表。
而逻辑结构,是用户赋予这张表的定义,比如你规定了一个键码字段,或者在员工表里面添加了一个年龄字段,对于数据库来说,仅仅是一个字段而已,但是对用户来说就有了含义。更进一步的,逻辑结构描绘的是表和表之间的关系,这是关系型数据库的灵魂所在,正是因为有了表间关系,才能把数据库的能力发挥到最大。
像我上面举的案例,同样一个关系型的二维表格,我通过逻辑结构的设计,把它的数据之间的树状关系表达了出来。这就是逻辑结构和物理结构的关系。

9 楼

简单来形容,逻辑结构是上层建筑,物理结构是基础

10 楼

顶起来!!不好碰到的好帖子

我来回复

您尚未登录,请登录后再回复。点此登录或注册