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

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

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

    参考:http://database.guide/what-is-a-database-schema/

    在数据库中,schema(发音 “skee-muh” 或者“skee-mah”,中文叫模式)是数据库的组织和结构,schemas 和schemata都可以作为复数形式。模式中包含了schema对象,可以是(table)、(column)、数据类型(data type)、视图(view)、存储过程(stored procedures)、关系(relationships)、主键(primary key)、外键(foreign key)等。数据库模式可以用一个可视化的图来表示,它显示了数据库对象及其相互之间的关系

     

    以上是模式图的一个简单例子,显示了三个表及其数据类型、表之间的关系以及主键和外键,以下是数据库模式的一个更复杂的例子。

     

    在这种情况下,模式图分为四个部分:

    (1)Customer Data(客户数据):与客户有关的数据,如姓名,地址等

    (2)Business(业务):业务所需的数据,例如员工,商店位置,付款细节等

    (3)Inventory(库存):所有产品的细节。在这里,产品是电影,所以它包含电影标题,类别,演员等数据。

    (4)Views(视图):关于用于评估的数据的特别观点,所以通过这些模式图,我们可以进一步创建一个数据库,实际上,MySQL Workbench允许我们直接从图中生成一个Create Table脚本,然后我们就可以直接用这个脚本去创建一个数据库,还可以直接将一个数据库转换为一个关系图表。

    Schema和DataBase是否等同?

    涉及到数据库的模式有很多疑惑,问题经常出现在模式和数据库之间是否有区别,如果有,区别在哪里。

    取决于数据库供应商

    对schema(模式)产生疑惑的一部分原因是数据库系统倾向于以自己的方式处理模式

    1MySQL的文档中指出,在物理上,模式与数据库是同义的,所以,模式和数据库是一回事。

    2但是,Oracle的文档却指出,某些对象可以存储在数据库中,但不能存储在schema中。 因此,模式和数据库不是一回事。

    (3)而根据这篇SQL Server技术文章SQLServer technical article,schema是数据库SQL Server内部的一个独立的实体。 所以,他们也不是一回事。

    因此,取决于您使用的RDBMS,模式和数据库可能不一样。

    SQL标准对schema如何定义?

    ISO/IEC 9075-1 SQL标准中将schema定义为描述符的持久命名集合(a persistent, named collection of descriptors),如果你之前对schema的定义疑惑不解,希望看了我的这篇文章会好一些,起码不会更差。

    广义上

    造成疑惑的另一个原因可能是由于schema这一术语具有如此广泛的含义,因为它在不同的环境下有不同的含义,schema一词源于希腊语skhēma,意思是形态(form),轮廓(figure),形状(shape)或方案(plan)。Schema在心理学中被用来描述组织信息类别及其之间关系的有组织的思维或行为模式。我们在设计一个数据库之前,还需要看看数据中的信息种类和它们之间的关系, 在我们开始使用DBMS中的物理模式之前,我们需要创建一个概念模式。在软件开发中讨论模式时,可以讨论概念模式、物理模式、内部模式、外部模式、逻辑模式等,每一个都有其特定的含义。

    DBMS的schema定义

    以下是三个领先的关系数据库系统的schema定义:

    MySQL

    Conceptually, a schema is a set of interrelated database objects, such as tables, table columns, data types of the columns, indexes, foreign keys, and so on. These objects are connected through SQL syntax, because the columns make up the tables, the foreign keys refer to tables and columns, and so on. Ideally, they are also connected logically, working together as part of a unified application or flexible framework. For example, theINFORMATION_SCHEMA and performance_schema databases use “schema” in their names to emphasize the close relationships between the tables and columns they contain.

    In MySQL, physically, aschema is synonymous with adatabase. You can substitute the keywordSCHEMA instead ofDATABASE in MySQL SQL syntax, for example using CREATE SCHEMA instead of CREATE DATABASE.

    Some other database products draw a distinction. For example, in the Oracle Database product, aschema represents only a part of a database: the tables and other objects owned by a single user.

    MySQL官方文档指出,从概念上讲,模式是一组相互关联的数据库对象,如表,表列,列的数据类型,索引,外键等等。但是从物理层面上来说,模式与数据库是同义的。你可以在MySQL的SQL语法中用关键字SCHEMA替代DATABASE,例如使用CREATE SCHEMA来代替CREATE DATABASE

    参考: MySQL Glossary, MySQL 5.7 参考手册. MySQL, Retrieved 6 June 2016。

    SQL Server

    The names of tables, fields, data types, and primary and foreign keys of a database.

    SQL Server官方文档指出,schema中包含了数据库的表,字段,数据类型以及主键和外键的名称。参考:SQL Server Glossary. SQL Server 2016 Technical Documentation. Microsoft Developer Network. Retrieved 6 June 2016.

    Oracle Database

    Oracle中的schema系统与其他数据库系统大不相同,Oracle的schema与数据库用户密切相关。

    A schema is a collection of logical structures of data, or schema objects. A schema is owned by a database user and has the same name as that user. Each user owns a single schema.

    Oracle官方文档指出,schema是数据或模式对象的逻辑结构的集合,由数据库用户拥有,并且与该用户具有相同的名称,也就是说每个用户拥有一个独立的schema。

    参考: Oracle Database Objects. Oracle Database Online Documentation 12c Release 1 (12.1). Oracle Help Center. Retrieved 6 June 2016.

    如果想了解更多关于schema的内容,可以参考这篇文章schema definitions by DBMS.

    创建Schema

    尽管上述三个DBMS在定义schema方面有所不同,还是有一个共同点,就是每一个都支持CREATE SCHEMA语句。

    MySQL

    在MySQL中,CREATE SCHEMA创建了一个数据库,这是因为CREATE SCHEMACREATE DATABASE的同义词。 换句话说,你可以使用CREATE SCHEMA或者CREATE DATABASE来创建一个数据库。

    Oracle Database

    在Oracle中,CREATE SCHEMA语句实际上并不创建一个模式,这是因为已经为在创建用户时,数据库用户就已经创建了一个模式,也就是说在ORACLE中CREATE USER就创建了一个schema,CREATE SCHEMA语句允许你将schema同表和视图关联起来,并在这些对象上授权,从而不必在多个事务中发出多个SQL语句。

    SQL Server

    在SQL Server中,CREATE SCHEMA将按照名称创建一个模式,与MySQL不同,CREATE SCHEMA语句创建了一个单独定义到数据库的模式。和ORACLE也不同,CREATE SCHEMA语句实际创建了一个模式(前面说到这个语句在ORACLE中不创建一个模式),在SQL Server中,一旦创建了模式,就可以往模式中添加用户和对象。

    总结

    schema这个词可以用在很多不同的环境中,在特定数据库管理系统创建一个schema时,您需要使用DBMS特定定义模式,当你切换到一个新的数据库管理系统时,一定要查看该系统是如何定义schema的。

    展开全文
  • Oracle数据库对象

    千次阅读 2008-03-11 18:16:00
    本文研究有关Oracle数据库对象的用法。Oracle中包含五种数据库对象,分别为别名、序列、视图、索引和簇,其中别名和序列为Oracle中特有的数据库对象。 别名:通过对Oracle中数据表设置别名之后,可以使用别名对数据...
    本文研究有关Oracle数据库对象的用法。Oracle中包含五种数据库对象,分别为别名、序列、视图、索引和簇,其中别名和序列为Oracle中特有的数据库对象。

        别名:通过对Oracle中数据表设置别名之后,可以使用别名对数据表进行与原表名同样的各种操作。其语句关键字为
    synonym
    ,下面看其具体用法。
        创建同义词:create
    synonym
    student for stu;
        通过创建后,student即为stu表的别名,因此以下两语句执行结果为一样的
        select *from student;  ==>   select *from stu;
        删除同义词:drop synonym student;

        序列:作为Oracle的特有对象,序列用来实现Oracle的主键自增,这是区别于其他关系数据库的。关键字为
    sequence
        创建序列方法:create sequence NumSeq increment by 1 start with 1 maxvalue 999;创建一个序列从1开始递增量为1并设置最大值为999。
        序列使用:insert into testTable values(NumSeq.nextVal);

            nextVal
      返回下一个可用的值
            currVal
      获得当前序列中值   第一次需先返回一个nextVal,才能取得currVal
    值.  
            Alter  sequence 
    修改序列定义: alter sequence NumSeq set maxvalue 1000;

        视图与索引:其用法与其他数据库相同,这里不多赘述。

        簇:
    两表或多个表中存在相同列,将相同列存储在一个空间中,以节省空间
        创建簇方法:
        create cluser classcluser
        (
               ClassNo varchar2(10)
        );
        为簇创建索引  create index cluserIndex on cluser classcluser;

        创建表StuClass并指向已定义簇
        create table StuClass
        (
               ClassNo varchar2(10),
               ClassName varchar2(20)
        )cluser classcluser(ClassNo);

        创建表Student并指向已定义簇
        create table Student
        (
               StuNo int,
               ClassNo varchar2(10)
        )cluser classcluser(ClassNo);
     
    展开全文
  • 数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 和列(Column)组成的。列由同类的信息组成,每列又称为一个字段,每列的标题称为字段名。行包括了若干列信息项。一行数据称为一个或一条记录,它...

    1.表(Table )

    数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 和列(Column)组成的。列由同类的信息组成,每列又称为一个字段,每列的标题称为字段名。行包括了若干列信息项。一行数据称为一个或一条记录,它表达有一定意义的信息组合。一个数据库表由一条或多条记录组成,没有记录的表称为空表。每个表中通常都有一个主关键字,用于惟一地确定一条记录。

    2.索引(Index)

    索引是根据指定的数据库表列建立起来的顺序。它提供了快速访问数据的途径,并且可监督表的数据,使其索引所指向的列中的数据不重复。

    3.视图(View)

    视图看上去同表似乎一模一样,具有一组命名的字段和数据项,但它其实是一个虚拟的表,在数据库中并不实际存。在视图是由查询数据库表产生的,它限制了用户能看到和修改的数据。由此可见,视图可以用来控制用户对数据的访问,并能简化数据的显示,即通过视图只显示那些需要的数据信息。

    4.图表(Diagram)

    图表其实就是数据库表之间的关系示意图。利用它可以编辑表与表之间的关系。

    5.缺省值(Default)

    缺省值是当在表中创建列或插入数据时,对没有指定其具体值的列或列数据项赋予事先设定好的值。

    6.规则(Rule)

    规则是对数据库表中数据信息的限制。它限定的是表的列。

    7.触发器(Trigger)

    触发器是一个用户定义的SQL事务命令的集合。当对一个表进行插入、更改、删除时,这组命令就会自动执行。

    8.存储过程(Stored Procedure)

    存储过程是为完成特定的功能而汇集在一起的一组SQL 程序语句,经编译后存储在数据库中的SQL 程序。

    9.用户(User)

    所谓用户就是有权限访问数据库的人。

    展开全文
  • 实验二 数据库及数据库对象的创建和管理   一、实验目的 1.掌握用企业管理器(Enterprise Manager)对数据库的完整创建、修改和删除 2.掌握用企业管理器(Enterprise Manager)对常见的数据库对象如表、试图、...
  • 数据库对象的查看什么是数据库对象 数据库对象式数据库的组成部分:含有表(table),索引(index),视图(view),图表(Diagram)、缺省值(Default)、规则(Rule)、触发器(Trigger)、存储过程...
  • Oracle数据库对象失效问题

    千次阅读 2019-12-19 10:34:49
    在日常运维过程中,我们会发现Oracle数据库的一些对象(view、package、type、procedure等)会变成失效状态(invalid)。造成失效的原因有很多,大体可以分成两大类: 1.对象本身编译报错。 这种情况很可能发生...
  • Oracle数据库常见对象

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

    千次阅读 2019-03-31 17:20:08
    原文地址:https://www.cnblogs.com/linhuide/p/5804878.html ... 数据库对象是数据库的组成部分,常常用CREATE命令进行创建,可以使用ALTER命令修改,用DROP执行删除操作。 常见的数据库对象有用户...
  • 4.常见的数据库对象 前言 非科班自学SQLSERVER和C#编程两年。该系列文章中涉及的知识点是在工作中需要用到的一些基础知识。文章比较适合初识数据库的学生或自学数据库的成人,文章是以SSMS作为例子。如果有认知错误...
  • mysql数据库对象关系映射

    千次阅读 2017-07-15 23:47:49
    mysql数据库对象关系映射   1.对“对象关系映射”的理解   a.对象:可以理解为java中的类   b.关系:可以理解为数据库的表   c.映射:这是因为java中的数据的类型与数据库的数据类型是有些不同的,...
  • Oracle_表空间、数据库对象

    千次阅读 2018-09-12 16:08:23
    1、Oracle数据库对象 数据库对象是数据库的组成部分,常常用 CREATE 命令进行创建,可以使用 ALTER 命令修改,用 DROP 执行删除操作。前面已经接触过的数据库对象有表、用户等。 同义词:就是给数据库对象一个别名...
  • 什么是数据库触发器?

    千次阅读 2019-09-12 10:13:20
    特殊数据库对象 定义 用于触发器 复杂的审计 执行业务规则 派生列值 触发器很棘手! 什么是数据库触发器? 数据库触发器是在数据库中发生特定操作时运行的特殊存储过程。大多数触发器定义为在对表的数据进行...
  • 数据库对象名无效 解决方法总结

    万次阅读 2019-02-25 18:11:23
    数据库里面新建表后显示对象名无效,但是在表中能看见,就是无法引用。(强迫症、看着下划线是一排红色的、不爽)。重启sql服务也没有用。 暴力解决方法::关闭SQL管理器,再重新打开。(红色下划线不见了、对象...
  • 实验二 数据库及数据库对象的创建和管理一、实验目的 1.掌握用企业管理器(Enterprise Manager)对数据库的完整创建、修改和删除 2.掌握用企业管理器(Enterprise Manager)对常见的数据库对象如表、试图、索引等的...
  • 对象关系数据库

    千次阅读 2014-05-30 11:23:53
    使用面向对象方法学可以定义任何一种DBMS数据库,即网络型、层次型、关系型、面向对象型均可,甚至文件系统设计可以遵循面向对象的思路。对象-关系数据库正是把面向对象方法学与关系数据库系统技术相结合的产物。 ...
  • 根据某个数据库迁移项目需要,结合个人对数据库对象的理解,整理了一份数据库对象(包括表、视图)导出、导入脚本。供参考。 1、实现存储过程、函数、包、触发器、视图、同义词的批量导出与恢复脚本 2、以下脚本均在...
  • SQL Server:数据库对象

    千次阅读 2014-07-31 13:59:07
    在SQL Server 2008的数据库中,常包含许多对象,列举如下: ►数据库  见博文:《SQL Server:数据库介绍》   ►事务日志 实际上,任意数据库的更改起初不进入数据库本身,而是不断地被写入到事务日志。。...
  • 【原创译文】深入理解Android为什么不允许Room数据库对象间(外键)引用译者zhangphil@csdn注:当我开始使用Android Room技术时候,Room明确禁止对象间外键引用,让我感觉不可思议,也觉得不正常,因为对象间引用...
  • Sql小白入门(三)管理数据库对象

    千次阅读 2017-01-10 22:18:46
    1、什么是数据库对象  数据库对象是数据库里定义的、用于存储或引用数据的对象,比如表、视图、促,序列、索引和异名。本章的内容以表为主,因为它是关系型数据库里最主要、最简单的数据存储形式。 2、什么是规则 ...
  • 数据库及数据库中表等数据库对象的建立实验(包括关系图、完整性、权限控制、视图、索引等内容)实验1 SQL Server的安装安装过程展示实验2 设计数据库、创建数据库和数据表实验5 视图实验6 完整性约束实验7 权限管理...
  • 数据库什么数据库的概念

    千次阅读 2019-07-30 13:53:42
    本节介绍数据库的基本概念,包括数据库存储方式、数据库技术的发展历史、数据库的存储结构以及数据库在开发中的作用。 数据存储方式 计算机数据(Data)的存储一般以硬盘为数据存储空间资源,从而保证计算机内的...
  • MySQL提供了以下三种方法用于获取数据库对象的元数据: 1)show语句 2)从INFORMATION_SCHEMA数据库里查询相关表 3)命令行程序,如mysqlshow, mysqldump 用SHOW语句获取元数据 MySQL用show语句获取元数据...
  • 数据库面向对象设计

    千次阅读 2013-06-04 14:08:17
    面向对象的关系数据库设计  一、 概念的区分  有些人把面向对象数据库设计(即数据库模式)思想与面向对象数据库管理系统(OODBMS) 理论混为一谈。其实前者是数据库用户定义数据库模式的思路,后者是数据库管理...
  • 对象数据库 VS 关系数据库

    千次阅读 2004-10-20 09:30:00
    对象数据库 VS 关系数据库我们将对象数据库管理系统(ODBMS)定义为一个集成了数据库能力与面向对象编程语言能力的数据库管理系统(DBMS),ODBMS使数据库对象看起来像是已有的一个或多个程序设计语言中的程序设计...
  • 数据库的九大对象

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

    千次阅读 2017-08-21 17:20:38
    数据库对象是数据库的组成部分,常见的有以下几种:1.表(Table )数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 和列(Column)组成的。列由同类的信息组成,每列又称为一个字段,每列的标题称为...
  • peewee通过Database类及其子类来建立数据库对象,目前peewee支持的数据库有Postgres, MySQL,MySQL,SQLite 以及BerkeleyDB。这里我们仅通过MySQL来进行了解,如果对其他数据库类型的相关内容感兴趣可以参见官方...
  • 面向对象数据库

    千次阅读 2006-03-02 22:23:00
    面向对象数据库系统支持面向对象数据模型,简称OO模型。也就是说,一个面向对象数据库系统是一个持久的、可共享的对象库的存储和管理者;而一个对象库是由一个OO模型所定义的对象的集合体。面向对象数据库系统目前尚...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 601,370
精华内容 240,548
关键字:

以下什么是数据库的对象