精华内容
下载资源
问答
  • 对象关系数据库

    千次阅读 2014-05-30 11:23:53
    使用面向对象方法学...按照“第三代数据库系统宣言”的文章的思想,一个面向对象数据库系统(OODBS)必须满足两个条件: (1)支持统一核心的面向对象数据模型; (2)支持传统数据库系统所有的数据库特征。 也就是
    使用面向对象方法学可以定义任何一种DBMS数据库,即网络型、层次型、关系型、面向对象型均可,甚至文件系统设计可以遵循面向对象的思路。对象-关系数据库正是把面向对象方法学与关系数据库系统技术相结合的产物。
    按照“第三代数据库系统宣言”的文章的思想,一个面向对象数据库系统(OODBS)必须满足两个条件:
    (1)支持统一核心的面向对象数据模型;
    (2)支持传统数据库系统所有的数据库特征。
    也就是说,面向对象数据库系统必须保持第二代数据库系统所具有的非过程化数据存取方式和数据独立性,既能很好地支持对象管理,又能更好的支持现有的各种优秀的数据管理技术。
    对象-关系数据库系统将关系数据库系统与面向对象数据库系统两方面的特征的相结合,增强了数据库的功能,使之具备了主动数据库和知识库的特性。对象-关系数据库系统除了具有原来关系数据库的各种特点外,还具备以下特点:
    (1)应具有扩充数据类型。目前商品化的关系型数据系统只能支持某一固定的类型集,而不能依据某一应用特殊需求来扩展其类型集。而对象-关系数据库系统应具有允许用户利用面向对象技术扩充数据类型,允许用户根据应用需求自己定义一个新的数据类型及相应的操作。新的数据类型、操作一经定义,就如同基本数据类型一样可供所有用户共享。
    (2)支持复杂对象。对象-关系数据库系统能够在SQL中支持复杂对象,实现对复杂对象的查询等处理。复杂对象是指由多种基本类型或用户自定义的数据类型构成的对象。
    (3)支持继承的概念。继承是面向对象技术的一个重要概念,对象-关系数据库系统能够支持子类、超类的概念,即支持继承的概念,如能够实现属性数据的继承和函数及过程的继承等;而且支持单继承与多继承等,也支持函数重载等面向对象的重要思想。
    (4)提供通用的规则系统。对象-关系数据库系统能提供强大而通用的规则系统。在传统的关系型数据库系统中,一般用触发起来保证数据库中数据的完整性,触发器是规则的一种形式。对象-关系数据库系统要支持地规则系统应该更通用,更灵活,并且要与其它的对象-关系处理方式相统一。例如规则中的事件和动作可以是合适的SQL语句,可以使用自定义函数,规则也能够被继承等。
     
    另外参见:
    展开全文
  • 关系数据库与对象数据库

    千次阅读 2019-08-12 16:01:38
    关系数据库(英语:Relational database),是创建在关系模型基础上的数据库,借助于集合代数等数学概念方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由...
    • 关系数据库

      关系数据库(英语:Relational database),是创建在关系模型基础上的数据库,借助于集合代数数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由埃德加·科德于1970年首先提出的,并配合“科德十二定律”。现如今虽然对此模型有一些批评意见,但它还是数据存储的传统标准。

      标准数据查询语言SQL就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。

      关系模型由关系数据结构关系操作集合关系完整性约束三部分组成。

      [外链图片转存失败(img-tT691rkr-1565596874945)(D:\Wangdb\Typora\Typora图片\关系数据库.png)]

    • 对象数据库

      关系数据库(Relational database)对应,对象数据库是一种以对象形式表示信息的数据库。对象数据库的数据库管理系统被称为ODBMSOODBMS

      两个主要原因让用户使用对象数据库技术。

      • 首先,关系数据库在管理复杂数据时显得笨重。
      • 其次,被应用软件操作的数据一般是用面向对象的编程语言如C++, Java, DelphiC#写成,而那些用来转化数据表示关系数据库元组的代码很冗繁,执行时也有不少耗时。这种应用程序和数据库表示信息的模式之间的不匹配有时也被称为impedance mismatch

    • Reference

    1. 维基百科:关系数据库
    2. 维基百科:对象数据库
    展开全文
  • 数据库对象

    千次阅读 热门讨论 2012-07-15 11:19:33
    初学数据库,什么是数据库对象呢?上网好一顿搜,居然没有发现有用资料,查看数据库的一些教材竟也没有明确定义。于是乎就暂且用vb中对象的定义来理解它,即有一定的功能集合的实体……那么数据库常见对象包括以下几...
            初学数据库,什么是数据库对象呢?上网好一顿搜,居然没有发现有用资料,查看数据库的一些教材竟也没有明确定义。于是乎就暂且用vb中对象的定义来理解它,即有一定的功能集合的实体……那么数据库常见对象包括以下几种:
              1、表 我认为表应该是数据库中最基本的对象,没有它的话那么其他对象就都没有的存在的意义,因为几乎无论任何一种对数据库操作不是以指向表为目标的。
              2、索引 索引是对表中每一条数据记录的独特标记,表中的数据以它为根据建立了顺序存储。使数据有储存规律性,从而可以实现快速查询。索引的功能就相当于银行排队时取到的票,这个票按时间的顺序对客户建立索引。
              3、视图 其实视图也是“表”,只不过这个“表”是虚拟的,并且视图里的数据是被包含于作为数据源的那个表,是表中部分数据的集合,类似于样本。它和表的关系也就是样本和总体的关系。
              4、图表 图表是数据库中表表之间的关系示意图,利用它可以编辑表和表之间的关系。这样如果一个数据库中存在多个表的话就不会孤立,而是产生了联系,从而简化对多个表的访问。
             5、缺省值 缺省值就是预先设置好的值。
             6、规则 规则就是限制,不过需要注意的是数据库里的规则只针对表中的列而言。
             7、触发器 看视频里的讲解对这个对象还不是很明白,说是用户定义的SQL事务命令的集合云云。但是顾名思义触发器应该是触发某些事件的东西,类似于vb中单击啊双击啊那些事件一样,当触发器被激活时可以对数据库做一些设定好的处理。有点面向对象对对象进行操作的意思。
             8、存储过程 视频里说存储过程是为了完成特定的操作而汇集在一起的一组SQL程序语句,经编译后存在数据库中的SQL程序。查了一些资料,其实这个存储过程还是SQL语句打包起来的,对一些特定的操作就只要一次性执行完成,可以重复利用!
             9、用户 乍看之下我没有明白这个用户怎么就成立对象了,用户不就是我吗?我是数据库里的对象?后来跟同学一讨论才想起来,这里的用户应该指的是用户权限。因为一个数据库的用户可以很多,但是每一个用户的权限是不一样的,多以就需要在开发过程中为用户分配权限,那么这样也就符合我对对象的定义的假设了。
            细想起来数据库的对象确实和vb中的对象挺像。所以数据库也应该算是面向对象的开发程序了,我想。另外,我认为以上数据库对象存在以下联系或者说关系:
     
     
    展开全文
  • 面向对象数据库简介

    千次阅读 2020-03-03 21:18:18
    面向对象数据库(OODB)是一个基于面向对象编程语言(OOP)的数据库,其数据都是以对象/类的形式表示并存储在面向对象数据库中。简单来讲,面向对象数据库 = 面向对象编程语言 + 关系型数据库特性。在这个公式里面,面向...

    面向对象数据的定义

    面向对象数据库(OODB)是一个基于面向对象编程语言(OOP)的数据库,其数据都是以对象/类的形式表示并存储在面向对象数据库中。简单来讲,面向对象数据库 = 面向对象编程语言 + 关系型数据库特性。在这个公式里面,面向对象编程语言的三个特性为继承、多态、封装;而关系型数据库特性的三个特性:实体完整性、并发、查询处理,因此可用下图[1]表示面向对象数据库。
    在这里插入图片描述

    关系型数据库的问题

    传统的关系型数据库存在一些约束:

    • 数据以简单的二维表形式将数据存储,每个元组的字段不可分。
    • 类型必须为内置的有限几种类型。
    • 不能用一个独立的单元表示一个复杂实体。
    • 不能定义属于某个类型的复杂处理操作。

    因为以上提出的约束,在传统关系型数据中,应用程序不能直接使用SQL查询返回的结果,需要执行装箱和拆箱操作:即需要显式地将返回的字节序列转换到相应编程语言下的类型 (拆箱),当数据需要存储回数据库前 ,也需要完成上述转换的逆过程(装箱)。举个例子[2],假设在数据库中存有一个零件表格part:

    create table part ( //零件关系part的schema
        int Pno,
        char(15) pname,
        char(10) psize,
        char(5) pcolor
    );
    

    应用程序使用C语言访问pno = 16的零件,需要按照如下伪代码地形式预处理:

    Define cursor P as Select * From Part Where pno = 16; //用游标读取数据库
    struct Part { //应用程序访问时需定义Part类型
        int number;
        char* name;
        char* bigness;
        char* color;
    } Example_part;
    //将打开的part表格的游标转换到Example_part类型上去
    Open P into Example_part Until no-more{
        Fetch P (
        Example_part.number = pno,
        Example_name = pname,
        Example_part.bigness = psize,
        Example_part.color = pcolor);
    }
    //对访问的结果进行后续操作
    

    上述例子表明,由于SQL查询返回的结果独立于任何编程语言,应用程序访问SQL查询结果时必须先将结果绑定到应用程序中的自定义类型上去,随后才能对数据执行操作。并且SQL中的数据类型不能为每种实体定义相应的复杂操作,应用程序需要手动实现这些对实体数据的操作代码。此外,由于不能自定义数据类型以及封装处理数据对象的操接口, 用户必须显式地管理不同数据表格之间的关联关系,为了保证完整性需要定义主键,为复杂的数据操作和事务写相应存储过程

    面向对象数据库的应用场景

    一般的数据库应用程序例如银行,教务处等需要应对的数据类型结构简洁,进行数据库设计和应用程序设计时负担较小。但是对于那些不得不与复杂,特殊化的数据结构打交道的新型的数据库应用,例如卫星数据应用,CAD建模应用,多媒体数据库应用,让应用程序显式地管理数据表格之间的关联关系、定义复杂的主键、实现复杂的存储过程无疑是不现实的。在这些应用场景下,传统关系型数据库性能较差,例如实现一个最近邻查找可能都需要引入join操作。

    面向对象数据库在1985年左右应运而生,主要是希望解决上述问题,他们主要以工程应用软件作为其市场[2]。当然,由于OODB缺乏数据保护、访问控制机制、查询处理和事务处理系统,大部分OODB并不将商业数据处理作为他们市场,这也是OODB数据库无法获得较高数据库市场占有率的根本原因。

    面向对象数据库以对象作为存储的基本单位,多个类型相同的对象的集合成为一个类。现实世界的任一实体都被统一地模型化为一个对象,每个对象有一个唯一的标识,称为对象标识。借助持久性编程语言的底层特性,任何对象从磁盘读入内存和写回磁盘均能隐式地保证,在内存中的数据只是数据库中该对象的临时副本,应用程序可以调用属于该对象的接口,处理封装在对象内部的数据,类似C++和java那样。

    面向对象数据库的优缺点

    最后总结而言,面向对象数据库相比关系型数据库的优缺点如下[3]:

    优势

    • 数据模型为语义数据模型,基于现实世界。
    • 对象访问不需要装箱和拆箱操作,节省编程和执行时间。
    • 更好的并发控制 – 对象的层次结构可能被锁定。
    • 在分布式架构状态下可以很好的工作。

    劣势

    • 关系表更简单易懂,数据结构的存储较为简单。
    • 数据间的关系相对简单时,面向对象数据库效率较低。
    • 关系数据库有更多的工具,对事务处理,分析型数据处理任务的支持更好。
    • 关系型数据库拥有统一的标准,相应的服务和支持更加稳定。

    参考文献

    [1]. What is an Object-Oriented Database, https://study.com/academy/lesson/what-is-an-object-oriented-database.html 2020,2,24

    [2]. Joseph M. Hellerstein and Michael Stonebraker. What Goes Around Comes Around. Readings in Database Systems, 4th Edition (2005)

    [3]. 面向对象数据库,https://tson.com/object-oriented-databases-translate/ 2020,2,24

    展开全文
  • 导出用户对象 注意:只导出了结构,没有导出数据 然后就可以拿到另外一个用户或者其他人使用了。 导入用户对象 同前面的导入数据库表文件一样,使用 @F:\administrator\Desktop\wyx.sql,选择你自己的路径 如...
  • 用户(user):Oracle用户是用连接数据库和访问数据库对象的。(用户是用来连接数据库访问数据库)。 模式(schema):模式是数据库对象的集合。模式对象数据库数据的逻辑结构。(把数据库对象用模式分开成不同的逻辑...
  • 删除SQL数据库中的用户对象

    千次阅读 2019-07-07 09:16:13
    在SQL数据库的恢复中,可能你经常会碰到如同“选定的用户拥有对像”或者“对象 '' 对像名”不存在或不是对此操作有效的对象“这类的错误提示。那么到底怎么解决这类问题呢?朱朱提供两种方法:exec sp_...
  • 数据库对象有哪些

    千次阅读 2019-08-25 11:08:08
    数据库的主要组成部分就是数据库对象,而数据库中的一行数据,称为一条记录,纵列被称为字段,数据库记录,代表有一定意义的组合信息。而缺省值是说在数据库表中插入数据或创建列时,有些列或者列的数据没有予以设定...
  • 数据库对象类型

    千次阅读 2016-11-18 16:58:45
    数据库对象类型 ...数据库对象类型与 JavaC#中的类相似,都可以包含属性(存储对象的状态)方法(用于建立对象的行为模型)。 对象类型 包括: A、对象类型规范(Object TypeSpecification)  
  • 数据库用户和数据库角色

    千次阅读 2006-05-04 21:54:00
    14.3.1 数据库用户简介 数据库用户用来指出哪一个人可以访问哪一个数据库。在一个数据库中,用户ID 惟一标识一个用户,用户对数据的访问权限以及对数据库对象的所有关系都是通过用户账号来控制的,用户账号总是基于...
  • 对象数据库 VS 关系数据库

    千次阅读 2004-10-20 09:30:00
    对象数据库 VS 关系数据库我们将对象数据库管理系统(ODBMS)定义为一个集成了数据库能力与面向对象编程语言能力的数据库管理系统(DBMS),ODBMS使数据库对象看起来像是已有的一个或多个程序设计语言中的程序设计...
  • 98.Oracle数据库SQL开发之 用户特权角色——对象特权 欢迎转载,转载请标明出处: 对象特权允许用户数据库对象执行特定的操作,例如对表执行DML语句。 常用的对象特权: SELECT INSERT UPDATE DELETE EXECUTE 1...
  • 数据库基本对象

    千次阅读 2019-04-02 15:29:43
    概念:在一个业务逻辑处理过程中,多条SQL语句作为一个原子操作(单个工作的逻辑单元中处理的一些列SQL操作),这些操作作为一个整体想数据库提交,这些SQL要么全部执行成功,要么全部不执行。 MySQL中默认把每一条...
  • 数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 列(Column)组成的。列由同类的信息组成,每列又称为一个字段,每列的标题称为字段名。行包括了若干列信息项。一行数据称为一个或一条记录,它...
  • 面向对象数据库

    千次阅读 2006-03-02 22:23:00
    也就是说,一个面向对象数据库系统是一个持久的、可共享的对象库的存储管理者;而一个对象库是由一个OO模型所定义的对象的集合体。面向对象数据库系统目前尚缺少关于OO模型的统一的规范说明,OO模型缺少一个统一的...
  • mysql数据库用户及用户权限管理

    万次阅读 多人点赞 2018-10-09 21:37:06
    (1)mysql数据库用户权限级别  1)全局性管理权限:作用于整个mysql实例级别  2)数据库级别:作用于指定的某个数据库上或者所有数据库上  3)数据库对象级别权限:作用于指定的数据库对象上(表或者视图) ...
  • 面向对象数据库系统

    千次阅读 2018-04-23 09:05:14
    在面向对象的方法中,对象作为描述信息实体的...深圳IT 外包 http://www.lankuai.info面向对象数据库的实现一般有两种方法:一种是纯粹的面向对象数据库技术,用于构建面向对象技术的数据库;另一种是在现有关系...
  • 【Hibernate】保存对象数据库

    千次阅读 2016-01-17 22:46:39
    【Hibernate】保存对象数据库,实现事务
  • Oracle数据库常见对象

    千次阅读 2018-06-23 00:25:07
    以下总结常见的数据库对象,供自己复习如有错误希望指出,共同学习!一、索引什么是索引? 索引是一种用于提高查询效率的数据库对象,使用索引可以快速定位数据,减少磁盘IO操作次数。索引是由数据库自动维护,删除...
  • 面向对象数据库技术

    千次阅读 2006-08-28 10:58:00
    面向对象的关系数据库设计一、 概念的区分有些人把面向对象的数据库设计(即数据库模式)思想与面向对象数据库管理系统(OODBMS) 理论混为一谈。其实前者是数据库用户定义数据库模式的思路,后者是数据库管理程序的思路...
  • 第七章 数据库数据库对象

    万次阅读 热门讨论 2019-03-29 20:04:21
    第七章 数据库数据库对象 SQL Server数据库分类 用户数据库 系统数据库,保存维护系统正常运行的信息 SQL Server系统数据库 master :记录实例的所有系统级信息(元数据,端点,连接服务器系统配置),记录...
  • 131.Oracle数据库SQL开发之 数据库对象——用户自定义的构造函数  欢迎转载,转载请标明出处:  用户可以在PL/SQL中定义自己的构造函数,用于初始化一个新对象。 CREATETYPE t_person2 AS OBJECT (  id INTEGER,...
  • 1.一个数据库用户可以对应多个架构(架构是表容器)。架构里面包含的是数据库表。 2.一个数据库角色有可能涉及多个架构。数据库角色对应的是权限。 3.一个用户对应一个数据库角色。 4.登录名与数据库用户在服务器...
  • 数据库中的Schema是什么?

    万次阅读 多人点赞 2018-01-10 13:14:35
    数据库中,schema(发音 “skee-muh” 或者“skee-mah”,中文叫模式)是数据库的组织结构,schemas andschemata都可以作为复数形式。模式中包含了schema对象,可以是表(table)、列(column)、数据类型(data type...
  • 达梦数据库用户管理

    千次阅读 2020-04-22 12:27:20
    达梦数据库用户管理(一)概念(二)规划用户(三)用户维护 (一)概念 在DM数据库中用户管理主要涉及到三块:用户、权限、角色。权限:执行特定类型sql 或是访问其他模式对象的权利。 系统权限:数据库对象的创建...
  • 数据库面向对象设计

    千次阅读 2013-06-04 14:08:17
    有些人把面向对象的数据库设计(即数据库模式)思想与面向对象数据库管理系统(OODBMS) 理论混为一谈。其实前者是数据库用户定义数据库模式的思路,后者是数据库管理程序的思路。用户使用面向对象方法学可以定义任何一种...
  • 这篇文章讲述的是ORACLE数据库用户权限控制,如有错误或者不当之处还希望各位大神批评指正。 用户权限是什么? 在数据库中,用户可以对数据库进行的操作叫做用户的权限。 如何创建一个用户? 创建一个名...
  • 数据库的九大对象

    千次阅读 2017-11-17 02:27:27
    数据库对象数据库的组成部分,常见的有以下几种: 1.表(Table ) 数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 列(Column)组成的。列由同类的信息组成,每列又称为一个字段,每列的...
  • 欢迎大家扫码关注微信公众号「图灵的猫」,除了有更多AI、算法、Python相关文章分享,还有免费的SSR节点外网学习资料。其他平台(微信/知乎/B站)也是同名「图灵的猫」,不要迷路哦~ ...
  • 数据库的9种对象

    千次阅读 2017-08-21 17:20:38
    数据库对象数据库的组成部分,常见的有以下几种:1.表(Table )数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 列(Column)组成的。列由同类的信息组成,每列又称为一个字段,每列的标题称为...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 931,614
精华内容 372,645
关键字:

哪个对象是数据库和用户联系