设为首页 收藏本站
查看: 1021|回复: 0

[经验分享] What's DB2 模式?

[复制链接]
发表于 2016-11-18 09:19:46 | 显示全部楼层 |阅读模式
  近期负责一个银行方面的项目,需要用到DB2实现多数据库版本切换。初步接触DB2,对于它的管理工具(IBM DATA STUDIO)虽然与ORACLE\MSSQL大同小异,但还是有些东西不一样的。比如什么是它的模式。
  如图:
DSC0000.png

  实际上DB2的SQL结构跟MSSQL也相差无几,但在不了解什么是DB2模式的情况下,写个 SECLECT * FROM TABLES  会提示未定义的TABLES.很疼!请看如下资料:
  DB2模式简介:
  模式(Schema)是一个逻辑分组,每个数据库内部的对象在创建时,都可以显式或者隐式地指定模式,同一个模式下的对象构成一个集合。从某种角度来说,模式与用户比较相似,但是与用户也有不同之处,DB2 的用户必须存在于操作系统中,而模式并不需要存在于操作系统中,也不需要与用户一一对应上。
  通常情况下,使用数据对象都需要指定模式名称和对象名称,即:
模式名称 . 对象名称
  如 xudaxia.eg代表模式 xudaxia下的表 eg。不同的模式下,对象名称可以相同,不会相互干扰。
  显式创建模式的命令为:
CREATE SCHEMA < 模式名称 > [AUTHORIZATION 用户名 ]
  该命令的含义是创建一个指定名称的模式,如果包含 AUTHORIZATION 子句,则表示该用户是这个模式的拥有者。
  可以给模式授予相应的特权。
  如果在创建某个对象时指定了模式名称,而该模式还不存在,则会隐式地创建该模式,如:
CREATE TABLE my.table1( …… )
  如果模式 my 不存在,则会创建该模式,接着在模式 my 下创建表 table1。
  如果在创建对象或者查询数据的时候没有指定模式名称,系统会使用专用寄存器 CURRENT SCHEMA 中指定的值作为模式名称。可以使用如下 DB2 命令查看该专用寄存器的值:
VALUES CURRENT SCHEMA
  可以通过如下 DB2 命令修改该寄存器中的值:
SET CURRENT SCHEMA < 模式名称 >
  该命令的含义是创建一个指定名称的模式,如果包含 AUTHORIZATION 子句,则表示该用户是这个模式的拥有者。
  可以给模式授予相应的特权,具体操作请参见 5.4 节。
  如果在创建某个对象时指定了模式名称,而该模式还不存在,则会隐式地创建该模式,如:
CREATE TABLE my.table1( …… )
  如果模式 my 不存在,则会创建该模式,接着在模式 my 下创建表 table1。
  如果在创建对象或者查询数据的时候没有指定模式名称,系统会使用专用寄存器 CURRENT SCHEMA 中指定的值作为模式名称。可以使用如下 DB2 命令查看该专用寄存器的值:
VALUES CURRENT SCHEMA
  可以通过如下 DB2 命令修改该寄存器中的值:
SET CURRENT SCHEMA < 模式名称 >
  这样该专用寄存器中记录的就是指定的模式名称。
  如果没有专门指定名称,DB2 使用当前登录的用户名作为该专用寄存器的值。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-301948-1-1.html 上篇帖子: DB2 时间操作 下篇帖子: DB2常见问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表