精华内容
下载资源
问答
  • schema什么意思什么作用?

    使用SSH新建项目连接数据库的时候在hibernate的配置文件*.hbm.xml中会有schema,代码示例如下:



    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <!-- 
        Mapping file autogenerated by MyEclipse Persistence Tools
    -->
    <hibernate-mapping>
        <class name="com.hpsvse.film.yinhao.entity.Filminfo" table="FILMINFO" schema="al442">
            <id name="filmid" type="java.math.BigDecimal">
                <column name="FILMID" precision="22" scale="0" />
                <generator class="increment" />
            </id>
            <many-to-one name="filmtype" class="com.hpsvse.film.yinhao.entity.Filmtype" fetch="select">
                <column name="TYPEID" precision="22" scale="0" />
            </many-to-one>
            <property name="filmname" type="java.lang.String">
                <column name="FILMNAME" length="10" />
            </property>
            <property name="actor" type="java.lang.String">
                <column name="ACTOR" length="30" />
            </property>
            <property name="director" type="java.lang.String">
                <column name="DIRECTOR" length="30" />
            </property>
            <property name="ticketprice" type="java.math.BigDecimal">
                <column name="TICKETPRICE" precision="22" scale="0" />
            </property>
        </class>
    </hibernate-mapping>

    这段代码中<class name="com.hpsvse.film.yinhao.entity.Filminfo" table="FILMINFO" schema="al442">schema="al442"表示数据库的用户名。如果当前链接数据库的用户名称不是al442的话,实际操作中还是会用al442这个用户来操作。如果我们把a1442这个数据库的用户名改变了的话,那么项目运行的时候还是会查找操作a1442这个数据库,但是此时这个数据库已经不存在了,程序就会出错,查不到数据,所以我们通常情况下会在框架搭建好了之后删除schema="al442" 这部分代码以避免以后可能更改数据库用户名的时候出现异常,如果确定以后数据库用户名不作更改的话可以不作删除,但是建议删除此部分代码更为安全。


    展开全文
  • 看来有些人还在schema不明白的真正含义,今天,我再次整理。我希望能帮助。我们先来看看它们的定义:A schema is a collection of database objects (used by a user.). Schema objects are the logical structures ...

    看来有些人还在schema不明白的真正含义,今天,我再次整理。我希望能帮助。

    我们先来看看它们的定义:
    A schema is a collection of database objects (used by a user.).
    Schema objects are the logical structures that directly refer to the database’s data.
    A user is a name defined in the database that can connect to and access objects.
    Schemas and users help database administrators manage database security.

    从定义中我们能够看出schema为数据库对象的集合,为了区分各个集合。我们须要给这个集合起个名字。这些名字就是我们在企业管理器的方案下看到的很多相似username的节点。这些相似username的节点事实上就是一个schema。schema里面包括了各种对象如tables, views, sequences, stored procedures, synonyms, indexes, clusters, and database links。

    一个用户一般相应一个schema,该用户的schema名等于username,并作为该用户缺省schema。这也就是我们在企业管理器的方案下看到schema名都为数据库username的原因。Oracle数据库中不能新创建一个schema,要想创建一个schema,仅仅能通过创建一个用户的方法解决(Oracle中尽管有create schema语句,可是它并非用来创建一个schema的)。在创建一个用户的同一时候为这个用户创建一个与username同名的schem并作为该用户的缺省shcema。即schema的个数同user的个数同样,并且schema名字同user名字一一 相应并且同样,全部我们能够称schema为user的别名,尽管这样说并不准确,可是更easy理解一些。

    一个用户有一个缺省的schema。其schema名就等于username,当然一个用户还能够使用其它的schema。假设我们訪问一个表时。没有指明该表属于哪一个schema中的。系统就会自己主动给我们在表上加上缺省的sheman名。比方我们在訪问数据库时。訪问scott用户下的emp表,通过select * from emp; 事实上,这sql语句的完整写法为select * from scott.emp。

    在数据库中一个对象的完整名称为schema.object。而不属user.object。相似假设我们在创建对象时不指定该对象的schema。在该对象的schema为用户的缺省schema。

    这就像一个用户有一个缺省的表空间。可是该用户还能够使用其它的表空间,假设我们在创建对象时不指定表空间,则对象存储在缺省表空间中。要想让对象存储在其它表空间中,我们须要在创建对象时指定该对象的表空间。



    咳,说了这么多,给大家举个样例。否则,一切枯燥无味!


    SQL> Gruant dba to scott

    SQL> create table test(name char(10));
    Table created.

    SQL> create table system.test(name char(10));
    Table created.

    SQL> insert into test values('scott');
    1 row created.

    SQL> insert into system.test values('system');
    1 row created.

    SQL> commit;
    Commit complete.

    SQL> conn system/manager
    Connected.

    SQL> select * from test;
    NAME
    ----------
    system

    SQL> ALTER SESSION SET CURRENT_SCHEMA = scott; --改变用户缺省schema名
    Session altered.

    SQL> select * from test;
    NAME
    ----------
    scott

    SQL> select owner ,table_name from dba_tables where table_name=upper('test');
    OWNER TABLE_NAME
    ------------------------------ ------------------------------
    SCOTT TEST
    SYSTEM TEST
    --以上就是我说的这个查询schema如user据别名。实际使用。shcema与user完全不同,无差异。在的情况下schema地名可以出现user名字。

    转载于:https://www.cnblogs.com/hrhguanli/p/4588131.html

    展开全文
  • 数据库中的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的。

    展开全文
  • 看来有的人还是对schema的真正含义不太理解,现在我再次整理了一下,需要的朋友参考下
  • Schema什么?

    2021-07-01 11:36:18
    Schema什么? schema是元数据的一个抽象集合,包含一套 schema component: 主要是元素与属性的声明、复杂与简单数据类型的定义。这些schema component通常是在处理一批 schema document时被创建。 数据库schema就是...

    Schema是什么?

    schema是元数据的一个抽象集合,包含一套 schema component: 主要是元素与属性的声明、复杂与简单数据类型的定义。这些schema component通常是在处理一批 schema document时被创建。

    数据库schema就是 :表, 列,数据类型,视图,存储过程,关系,主键,外键等。

    在ISO / IEC 9075-1 SQL标准定义了一个模式作为 描述符的持久性,命名集合。

    在MySQL文档指出,物理,一个模式是与数据库的代名词。因此,模式和数据库是同一件事。

    在软件开发中,当讨论模式时,可以讨论概念模式,物理模式,内部模式,外部模式,逻辑模式等。这些每个都有其特定的含义。

    XML Schema 是基于 XML 的 DTD 替代者。
    XML Schema 可描述 XML 文档的结构。
    XML Schema 语言也可作为 XSD(XML Schema Definition)来引用。
    XML Schema 的作用是定义 XML 文档的合法构建模块,类似 DTD。
    XML Schema:
    定义可出现在文档中的元素
    定义可出现在文档中的属性
    定义哪个元素是子元素
    定义子元素的次序
    定义子元素的数目
    定义元素是否为空,或者是否可包含文本
    定义元素和属性的数据类型
    定义元素和属性的默认值以及固定值

    XML Schema 是 DTD 的继任者
    我们认为 XML Schema 很快会在大部分网络应用程序中取代 DTD。
    理由如下:
    XML Schema 可针对未来的需求进行扩展
    XML Schema 更完善,功能更强大
    XML Schema 基于 XML 编写
    XML Schema 支持数据类型
    XML Schema 支持命名空间

    展开全文
  • XML Schema什么

    2015-12-24 09:26:00
    XML Schema什么XML Schema完全解说:本文讲述了XML Schema什么,为什么需要XML Schema ,以及举例说明怎么为一个XML文档准备XML Schema。XML Schema 是用来定义XML格式,构造的语言的一种。有W3C加以开发,...
  • schema什么

    2019-07-03 18:07:17
    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 ...
  • 原文:http://shanbei.info/schema-in-oracle-what-is-meant-in.html 2011年03月06日 ⁄ 数据库 ⁄ 共 1904字 ⁄ 评论数 1 ⁄ 被围观 3,863 次+ ...在现在做的Kraft Catalyst ... 一直不理解schema什么意思,也
  • MySQL的Schema什么?

    2020-11-29 14:25:04
    1 Schema概念 schema在数据库中表示的是数据库对象集合,它包含了各种对像,比如:表,视图,存储过程,索引等等。 一般一个用户对应一个集合,所以为区分不同集合就需给不同集合起名。用户的schema名就相当于...
  • XML Schema什么

    2017-08-07 20:42:00
    不明白schema的用途,查了一下,发现这篇文章讲的最简单易懂,特地转载分享给大家。 ... ========================== =========================== ...XML Schema完全解说:本文讲述了XML Schema什么,为什么需要X
  • XML Schema什么

    2017-07-22 20:06:47
    XML Schema 本身也是一种XML构造,它用来描述[哪个元素,在什么时候出现],[该元素具有什么样的属性]等等,也就是说,XML Schema是对XML的树形构造加以描述说明的一种语言。 原本,使用DTD对XML的树形构造加以描述...
  • 数据库schema什么

    千次阅读 2017-05-22 15:50:05
    schema is a collection of database objects. A schema is owned by a database user and has the same name as that user. schema即为某些数据库(指,某一“数据库用户”所创建的数据库)的集合;...
  • 数据库中的schema什么(简)

    万次阅读 多人点赞 2018-03-15 11:39:55
    数据库中的Schema突然想到数据库中的schema什么,于是多方搜索有了基本了解,做一个简单记录:在SQL环境下,schema就是数据库对象的集合,所谓的数据库对象也就是常说的表,索引,视图,存储过程等。在schema之上...
  • 在数据库中,schema(发音 “skee-muh” 或者“skee-mah”,中文模式)是数据库的组织和结构,schemas andschemata都可以作为复数形式。模式中包含了schema对象,可以是表(table)、列(column)、数据类型(data type)...
  • 什么是 URL Schema

    万次阅读 2018-02-01 08:22:34
    什么是 URL Schema? 详情描述 Android中的scheme是一种页面内跳转协议,是一种非常好的实现机制,通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转那个...
  • MySQL中information_schema什么

    万次阅读 多人点赞 2016-06-03 15:41:26
    今天突然看到了mysql有一个...从字面意思上来理解,就是信息计划/图表,那么一个问题就产生了,这个信息是什么呢? 既然information_schema数据库是MySQL自带的,那么,我们可以猜测它就是记录数据库信息的schema
  • https://blog.csdn.net/u010429286/article/details/79022484
  • 在数据库中,schema(发音 “skee-muh” 或者“skee-mah”,中文叫模式)是数据库的组织和结构,schemasandschemata都可以作为复数形式。模式中包含了schema对象,可以是表(table)、列(column)、数据类型(data type)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 57,588
精华内容 23,035
关键字:

schema是什么意思