What's DB2 模式?
近期负责一个银行方面的项目,需要用到DB2实现多数据库版本切换。初步接触DB2,对于它的管理工具(IBM DATA STUDIO)虽然与ORACLE\MSSQL大同小异,但还是有些东西不一样的。比如什么是它的模式。
如图:
实际上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 使用当前登录的用户名作为该专用寄存器的值。
What's DB2 模式?的更多相关文章
- db2模式
模式: 已命名对象的集合,可以对对象进行逻辑分组. 为用户A创建C模式: CREATE SCHEMA <schema-name> [ AUTHORIZATION <schema-ow ...
- DB2和Oracle区别
转 http://blog.chinaunix.net/uid-7374279-id-2057574.html 写在前面:今天客户来访(日本人),问我DB2和Oracle区别.因为不是DBA(勉强的理 ...
- oracle与DB2
1.体系结构,DB2的实例和数据库分开的做法,我个人还是比较喜欢的,因为实例可以创建多个,数据库的恢复直接恢复到实例下就可以了,相对ORACLE简单多了. 2.管理工具,DB2的管理工具做得太简陋了, ...
- oracle与DB2的一些架构
首先,我们需要理解 Oracle 使用的架构,并理解它与 DB2 的不同之处.图 1 展示了 Oracle 的系统结构.将该图与 图 2 进行比较,后者显示了 DB2 的系统结构.在阅读本文的时候,为 ...
- DB2学习笔记备忘 2018.5.9
DB2安装的时候选择了和系统用户一致的选项,然后登陆的时候,连接的时候输入的就是计算机用户的用户名和密码. 1.3 DB2数据库体系结构 系统 一个系统表示DB2的一个安装.在一个由很多及其组成的网络 ...
- (转)使用 DB2 HADR 选择用于灾难恢复的 SUPERASYNC 模式
使用 DB2 HADR 选择用于灾难恢复的 SUPERASYNC 模式 Vishnu G 和 Hemant Singh2013 年 6 月 25 日发布 WeiboGoogle+用电子邮件发送本页面 ...
- db2查看当前用户模式及当前用户的权限
1.连接数据库:db2 connect to appdb 2.查询当前用户模式:select current schema from sysibm.sysdummy1 或 select current ...
- db2日志模式、备份归档、恢复解析
DB2的日志分为两种模式,日志循环与归档日志,也就是非归档和归档模式.下面就具体介绍一下这两种方式以及和备份归档设置的关系. 一.日志循环 这是默认方式,也就是非归档模式,这种模式只支持(backup ...
- 微软Azure 经典模式下创建内部负载均衡(ILB)
微软Azure 经典模式下创建内部负载均衡(ILB) 使用之前一定要注意自己的Azure的模式,老版的为cloud service模式,新版为ARM模式(资源组模式) 本文适用于cloud servi ...
随机推荐
- [转]笔记本Ubuntu系统关闭独显+省电降温设置
[转载者按]最近装了Ubuntu 13.04 64 bits版操作系统玩玩,但是发现两个显卡都开着,所以上网查找资料,以在不需要3D的时候关闭Nvidia显卡.通过Bumblebee软件包可以达到这一 ...
- linux内核驱动中_IO, _IOR, _IOW, _IOWR 宏的用法与解析
在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动程序请求处理内容的值.cmd除了可区别数字外,还包含有助于处理的几种相应信息. cmd的大小为 32位,共分 4 个 ...
- Intersoft Mobile Studio 2013 R1 SP1 Crack
Intersoft Mobile Studio 2013 R1 SP1 (iOS, Android & WinR) Leave a comment tweet inShare ...
- EXP-00056: ORACLE error 6550 encountered报错;
SQL> exp sys/sys file=/home/oracle/sys.dmp full=y Export: Release 11.2.0.3.0 - Production on Wed ...
- PHP中zlib扩展实现GZIP压缩输出各种方法总结
一般情况下我们出现大量数据传输理希望减少服务器的带宽压力,会采取一种方式来压缩文件传输,php中用zlib也可以实现gzip压缩输出,下面我们来看GZIP压缩输出各种方法总结. GZIP(GNU-ZI ...
- asp.net用户检测的两种方式
第一种方式(继承System.Web.UI.Page类,重写OnInit方法): public class CheckSession : System.Web.UI.Page { ...
- Bzoj 3339: Rmq Problem && Bzoj 3585: mex 莫队,树状数组,二分
3339: Rmq Problem Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 833 Solved: 397[Submit][Status][D ...
- (5/18)重学Standford_iOS7开发_视图控制器生命周期_课程笔记
第五课: 1.UITextView @property (nonatomic, readonly) NSTextStorage *textStorage;//注意为只读属性,因此不能直接更改内容,NS ...
- C++中this指针的使用方法.
this指针仅仅能在一个类的成员函数中调用,它表示当前对象的地址.以下是一个样例: void Date::setMonth( int mn ) { month = mn; // 这三句是等价的 thi ...
- 检测到有潜在危险的Request.Form值
由于在.net中,Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值.立马报出“从客户端 中检测到有潜在危险的Request.Form值”这样的错. 用encodeU ...