schemamysql数据库schema是什么

schema  时间:2021-09-29  阅读:()

数据库中Schema和Database有什么区别

概论第四版中增加了create schema (第三版好像没有这个内容),但是却没有提到create database。

相反目前在大多数DBMS中(如SQL Server2000、Mysql等)都有create database语句用来新建数据库,而create schema 在SQL Server2000中确实也有但好像用处不大,不过也可能是我对SQL server2000中的create schema理解的不对,看过它的联机帮助也看的不太明白。

所以就不太明确create schema和create database到底是什么关系? 回复:schema是一个名字空间,创建在某个database下的;一个database下可以包含多个schema。

schema的好处有三点: 1. 多个用户使用同一个数据库而不会相互影响。

2. 对数据库中的对象进行逻辑分组,更便于管理。

3. 各个应用分别使用各自的模式,以避免命名冲突。

另外。

关于schema、database的定义各个数据库产品解释和实现不尽相同,需要具体情况具体分析。

schema到底有什么用?

数据库中的Schema,为数据库对象的集合,一个用户一般对应一个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 ess objects. schemas and users help database administrators manage database security. 从定义中可以看出schema为数据库对象的集合,为了区分各个集合,需要给这个集合起个名字,这些名字就是在企业管理器的方案下看到的许多类似用户名的节点,这些类似用户名的节点其实就是一个schema,schema里面包含了各种对象如tables views sequences stored procedures synonyms indexes clusters and database links。

一个用户一般对应一个schema 该用户的schema名等于用户名,并作为该用户缺省schema。

这也就是在企业管理器的方案下看到schema名都为数据库用户名的原因。

oracle数据库中不能新创建一个schema,要想创建一个schema,只能通过创建一个用户的方法解决(oracle中虽然有create schema语句,但是并不是用来创建一个schema的),在创建一个用户的同时为这个用户创建一个与用户名同名的schema并作为该用户的缺省schema。

即schema的个数同user的个数相同,而且schema名字同user名字一一 对应并且相同,所以可以称schema为user的别名,虽然这样说并不准确,但是更容易理解一些。

一个用户有一个缺省的schema,其schema名就等于用户名,当然一个用户还可以使用其他的schema。

如果访问一个表时,没有指明该表属于哪一个schema中的,系统就会自动给表上加上缺省的sheman名。

比如在访问数据库时,访问scott用户下的emp表,通过select from emp 其实,这sql语句的完整写法为select from scott.emp。

在数据库中一个对象的完整名称为schema.object,而不属user.object。

类似如果在创建对象时不指定该对象的schema,在该对象的schema为用户的缺省schema。

这就像一个用户有一个缺省的表空间,但是该用户还可以使用其他的表空间,如果在创建对象时不指定表空间,则对象存储在缺省表空间中,要想让对象存储在其他表空间中,需要在创建对象时指定该对象的表空间。

数据库中的”SCHEMA”是什么,怎么翻译?

A schema is a collection of database objects. A schema is owned by a database user and has the same name as that user 模式

数据库中的Schema和Database的区别

数据库中User和Schema的关系 假如我们想了解数据库中的User和Schema究竟是什么关系,首先必须了解一下数据库中User和Schema到底是什么概念。

  在SQL Server2000中,由于架构的原因,User和Schema总有一层隐含的关系,让我们很少意识到其实User和Schema是两种完全不同的概念,不过在SQL Server2005中这种架构被打破了,User和Schema也被分开了。

 首先我来做一个比喻,什么是Database,什么是Schema,什么是Table,什么是列,什么是行,什么是User?我们可以可以把 Database看作是一个大仓库,仓库分了很多很多的房间,Schema就是其中的房间,一个Schema代表一个房间,Table可以看作是每个 Schema中的床,Table(床)就被放入每个房间中,不能放置在房间之外,那岂不是晚上睡觉无家可归了J。

,然后床上可以放置很多物品,就好比 Table上可以放置很多列和行一样,数据库中存储数据的基本单元是Table,现实中每个仓库放置物品的基本单位就是床, User就是每个Schema的主人,(所以Schema包含的是Object,而不是User),其实User是对应与数据库的(即User是每个对应 数据库的主人),既然有操作数据库(仓库)的权利,就肯定有操作数据库中每个Schema(房间)的权利,就是说每个数据库映射的User有每个 Schema(房间)的钥匙,换句话说,如果他是某个仓库的主人,那么这个仓库的使用权和仓库中的所有东西都是他的(包括房间),他有完全的操作权,可以 扔掉不用的东西从每个房间,也可以放置一些有用的东西到某一个房间,呵呵,和现实也太相似了吧。

我还可以给User分配具体的权限,也就是他到某一个房间 能做些什么,是只能看(Read-Only),还是可以像主人一样有所有的控制权(R/W),这个就要看这个User所对应的角色Role了,至于分配权 限的问题,我留在以后单独的blog中详述。

比喻到这里,相信大家都清楚了吧。

  在SQL Server2000中,假如我们在某一个数据库中创建了用户Bosco,按么此时后台也为我们默认地创建了默认Schema 【Bosco】。

Schema的名字和User的名字相同,这也是我们分不清楚用户和Schema的原因。

 在SQL Server2005中,为了向后兼容,当你用sp_adduser 存储过程创建一个用户的时候,SQL Server2005同时也创建了一个和用户名相同的Schema,然而这个存储过程是为了向后兼容才保留的,我们应该逐渐熟悉用新的DDL语言 Create User和Create Schema来操作数据库。

在SQL Server2005中,当我们用Create User创建数据库用户时,我们可以为该用户指定一个已经存在的Schema作为默认Schema,如果我们不指定,则该用户所默认的Schema即为 dbo Schema,dbo 房间(Schema)好比一个大的公共房间,在当前登录用户没有默认Schema的前提下,如果你在大仓库中进行一些操作,比如Create Tabe,如果没有指定特定的房间(Schema),那么你的物品就只好放进公共的dbo房间(Schema)了。

但是如果当前登录用户有默认的 Schema,那么所做的一切操作都是在默认Schema上进行(比如当前登录用户为login1,该用户的默认Schema为login1,那么所做的 所有操作都是在这个login1默认Schema上进行的。

实验已经证明的确如此)。

估计此时你会有一点晕,为什么呢?我刚才说dbo是一个 Schema,但是你可以在数据库中查看到,dbo同时也是一个user,晕了吧,呵呵。

  在SQL Server2005中创建一个数据库的时候,会有一些Schema包括进去,被包括进去的Schema有:dbo,INFORMATION_SCHEMA, guest,sys等等(还有一些角色Schema,不提了,有晕了)。

 我在上文中已经提到了,在SQL Server2005中当用存储过程sp_adduser创建一个user时,同时SQL Server2005也为我们创建了一个默认的和用户名相同的Schema,这个时候问题出来了,当我们create table A时,如果没有特定的Schema做前缀,这个A表创建在了哪个Schema上,即进入了哪个房间?答案是:   1.如果当前操作数据库的用户(可以用Select current_user查出来)有默认的Schema(在创建用户的时候指定了),那么表A被创建在了默认的Schema上。

 2.如果当前操作数据库的用户没有默认的Schema(即在创建User的时候默认为空),但是有一个和用户名同名的Schema,那么表A照样被创建 在了dbo Schema上,即使有一个和用户名同名的Schema存在,由于它不是该用户默认的Schema,所以创建表的时候是不会考虑的,当作一般的 Schema来处理,别看名字相同,可是没有任何关系哦。

  3.如果在创建表A的时候指定了特定的Schema做前缀,则表A被创建在了指定的 Schema上(有权限吗?)  现在问题又出来了,在当前操作数据库的用户(用select current_user可以查看到,再次强调)没有默认Schema的前提下,当我们用Create table A语句时,A表会去寻找dbo Schema,并试图创建在dbo Schema上,但是如果创建A表的用户只有对dbo Schema的只读权限,而没有写的权限呢?这个时候A表既不是建立不成功,这个就是我以后会提及到的Login,User, Role和Schema四者之间的关系。

在这里,为了避免混淆和提高操作数据库的速度(在少量数据范围内,对我们肉眼来说几乎看不到差异),我们最好每次 在操作数据库对象的时候都显式地指定特定的Schema最为前缀。

  现在如果登录的用户为Sue,该用户有一个默认Schema也为Sue,那么如果现在有一条查询语句为Select * from mytable, 那么搜寻每个房间(Schema)的顺序是怎样的呢?顺序如下:   1. 首先搜寻sys.mytable (Sys Schema)   2. 然后搜寻Sue.mytable (Default Schema)   3. 最后搜寻 dbo.mytable (Dbo Schema)   执行的顺序大家既然清楚了,那么以后在查询数据库表中的数据时,最好指定特定的Schema前缀,这样子,数据库就不用去扫描Sys Schema了,当然可以提高查询的速度了。

  另外需要提示一下的是,每个数据库在创建后,有4个Schema是必须的(删都删不掉),这4个Schema为:dbo,guest,sys和INFORMATION_SCHEMA,其余的Schema都可以删除。

mysql数据库schema是什么

mysql schemas 概念 和 oracle schemas 不一样。

schemas 的 概念可理解为 "多个表(数据库对象)的集合,某用户拥有操作权限" 所以 schemas 在 mysql 中 理解为 database(逻辑库);

CloudCone:$14/年KVM-512MB/10GB/3TB/洛杉矶机房

CloudCone发布了2021年的闪售活动,提供了几款年付VPS套餐,基于KVM架构,采用Intel® Xeon® Silver 4214 or Xeon® E5s CPU及SSD硬盘组RAID10,最低每年14.02美元起,支持PayPal或者支付宝付款。这是一家成立于2017年的国外VPS主机商,提供VPS和独立服务器租用,数据中心为美国洛杉矶MC机房。下面列出几款年付套餐配置信息。CPU:...

Hostiger 16G大内存特价VPS:伊斯坦布尔机房,1核50G SSD硬盘200Mbps带宽不限流量$59/年

国外主机测评昨天接到Hostigger(现Hostiger)商家邮件推送,称其又推出了一款特价大内存VPS,机房位于土耳其的亚欧交界城市伊斯坦布尔,核50G SSD硬盘200Mbps带宽不限月流量只要$59/年。 最近一次分享的促销信息还是5月底,当时商家推出的是同机房同配置的大内存VPS,价格是$59.99/年,不过内存只有10G,虽然同样是大内存,但想必这次商家给出16G,价格却是$59/年,...

博鳌云¥799/月,香港110Mbps(含10M CN2)大带宽独立服务器/E3/8G内存/240G/500G SSD或1T HDD

博鳌云是一家以海外互联网基础业务为主的高新技术企业,运营全球高品质数据中心业务。自2008年开始为用户提供服务,距今11年,在国人商家中来说非常老牌。致力于为中国用户提供域名注册(国外接口)、免费虚拟主机、香港虚拟主机、VPS云主机和香港、台湾、马来西亚等地服务器租用服务,各类网络应用解決方案等领域的专业网络数据服务。商家支持支付宝、微信、银行转账等付款方式。目前香港有一款特价独立服务器正在促销,...

schema为你推荐
红杉树视频会议全时视频会议怎么样?徐州地税网上申报徐州国税和地税的网上申报具体步骤胶南建管网怎样在胶南信息港注册账号?流动比率计算公式流动比率和速动比率公式是怎么的啊,怎么计算啊?rd640华为rd系列有哪些型号drs系统MIS是什么系统长角牛网络监控机长角牛网络监控机的功能有哪些?广西网站建设公司广西网络策划公司l六间房六间房的名称由来wap地带APN,CMNET,CMWAP代表什么?
火山主机 edgecast t牌 mediafire下载工具 ixwebhosting 灵动鬼影 谁的qq空间最好看 卡巴斯基免费试用版 万网空间 登陆qq空间 SmartAXMT800 空间排行榜 web服务器有哪些 免费服务器 9929 ddos攻击器 监控主机 主机托管 衡天主机 更多