`
lkj107
  • 浏览: 108469 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ORACLE和DB2实现相同功能的做法(2)

阅读更多
1.如何查有多少个数据库实例的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>SELECT * FROM V$INSTANCE;
DB2 可以这样实现﹕
在命令窗口执行 db2ilist
2.如何查询数据库有多少表的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>select * from all_tables;
DB2 可以这样实现﹕
在命令中心执行
select * from syscat.tables;
3.如何知道表锁的情况的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>SELECT S.SID SESSION_ID, S.USERNAME, DECODE(LMODE, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR(LMODE)) MODE_HELD, DECODE(REQUEST, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR(REQUEST)) MODE_REQUESTED, O.OWNER||'.'||O.OBJECT_NAME||' ('||O.OBJECT_TYPE||')', S.TYPE LOCK_TYPE, L.ID1 LOCK_ID1, L.ID2 LOCK_ID2 FROM V$LOCK L, SYS.DBA_OBJECTS O, V$SESSION S WHERE L.SID = S.SID AND L.ID1 = O.OBJECT_ID
DB2 可以这样实现﹕
在你执行你的存储过程之前,执行命令打开锁的监视开光
db2 update monisor switches using lock on ;
然后执行你的存储过程,在执行存储过程期间的时候使用命令
db2 get snapshot for locks on yourdatdabasename ;
就可以看见了你锁情况了
4.如何对锁住的表进行解锁的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>alter system kill session 'sid,service#';
DB2 可以这样实现﹕
db2 force application all ;
db2 terminate ;
5.测试SQL语句执行所用的时间的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>set timing on ;
SQL>select * from tablename;
DB2 可以这样实现﹕
db2batch -d 库名 -f 含有SQL语句的文件名 ;
6. 如何配置Sequence的Oracle和DB2的写法
Oracle 可以这样实现﹕
建sequence seq_custid
create sequence seq_custid start 1 incrememt by 1;
建表时:
create table cust
{ cust_id smallint not null,
...}
insert 时:
insert into table cust
values( seq_cust.nextval, ...)
DB2 可以这样实现﹕
identity字段属性 用法:
create table时
cust_id smallint not null generated always as indentity (start with
1 increment by 1)
insert 时:
insert into table cust (cust_id, ... )
values ( default, ...)
 
1.如何实现分页显示的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>select rownum,* from BSEMPMS where rownum >=5 and rownum <=100;
DB2 可以这样实现﹕
select * from (select ROW_NUMBER() over() as a, db2admin.bsempms.* from
db2admin.bsempms) as temp where a>=5 and a<=100 ;
2.利用别的表创建表的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>create table a as select * from b ;
DB2 可以这样实现﹕
create table a like b ;
3.如何更改用户密码的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>alter user user123 identified by password_new;
DB2 可以这样实现﹕
connect to dbname user db2admin using oldpassw new newpassw confirm newpassw ;
4.如何增加用户的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>create user user123 identified by password_new;
DB2 可以这样实现﹕
添加用户:
“开始/设置/控制面板/用户”添加一个用户名(例:db2admin)
分配权限:
grant dbadm on database to user 用户名
5.两个结果集互减的函数的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>SELECT * FROM BSEMPMS_OLD MINUS SELECT * FROM BSEMPMS_NEW;
DB2 可以这样实现﹕
SELECT * FROM BSEMPMS_OLD EXCEPT SELECT * FROM BSEMPMS_NEW;
SELECT * FROM BSEMPMS_OLD EXCEPT ALL SELECT * FROM BSEMPMS_NEW;
6.两个结果集互加的函数的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>SELECT * FROM BSEMPMS_OLD INTERSECT SELECT * FROM BSEMPMS_NEW;
SQL>SELECT * FROM BSEMPMS_OLD UNION SELECT * FROM BSEMPMS_NEW;
SQL>SELECT * FROM BSEMPMS_OLD UNION ALL SELECT * FROM BSEMPMS_NEW;
DB2 可以这样实现﹕
SELECT * FROM DB2ADMIN.BSEMPMS
UNION
SELECT * FROM DB2ADMIN.BSEMPMS ;
SELECT * FROM DB2ADMIN.BSEMPMS
UNION ALL
SELECT * FROM DB2ADMIN.BSEMPMS ;
7.如何找数据库表的主键字段的名称的Oracle和DB2的写法
Oracle 可以这样实现﹕
SQL>SELECT * FROM user_constraints WHERE CONSTRAINT_TYPE='P' and table_name='TABLE_NAME';
DB2 可以这样实现﹕
select colnames from syscat.indexes where tabname='TABLE_NAME' ;
 
分享到:
评论

相关推荐

    ORACLE转DB2对照全解

    **注意:** Oracle和DB2都支持外连接,语法相同。 #### 十二、Decode语句 **Oracle:** ```sql DECODE(col, 'value1', val1, 'value2', val2, def_val) ``` **DB2:** ```sql CASE WHEN col = 'value1' THEN val1 ...

    DB2与ORACLE常用语句对照

    - Oracle的`ALTER TABLE`用于修改表结构,DB2也提供相同功能。 - 两者都支持`DROP TABLE`来删除表,但需要注意的是,Oracle默认是不回收空间的,而DB2在删除表时会回收空间。 2. 数据操作语言(DML): - 插入数据...

    ORACLE与DB2的区别和转换

    DB2则通过`cast`函数实现相同功能,可以将一种数据类型转换为另一种数据类型。 ##### 8. 创建类似表 **Oracle**: `create table a as select * from b;` **DB2**: `create table a like b;` - **解析**: 在...

    DB2和ORACLE 应用开发差异比较

    - Oracle的重做日志文件(Redo Log Files)用于记录事务的改变,而DB2使用事务日志文件(Transaction Log Files)实现相同功能。 4. **编程语言支持** - Oracle支持PL/SQL,一种内嵌在SQL中的过程式语言。 - DB2...

    SQL_Server,Oracle,DB2数据库SQL语句比较

    在Oracle中,通过`SELECT * FROM xtable WHERE ROWNUM 实现相同功能。注意,ROWNUM是Oracle的一个伪列,用于标记每一行的序号。 DB2则使用`SELECT * FROM xtable FETCH FIRST N ROWS ONLY`来获取前N行数据。`FETCH ...

    oracle转DB2 对照

    - 注意点: DB2中没有直接对应的函数,但可以使用 `CASE` 语句实现相同功能。 #### 13. Rownum - **Oracle** 支持 `ROWNUM` 来限制结果集中的行数。 - Oracle示例: ```sql SELECT * FROM (SELECT column, ROWNUM...

    Oracle和DB2间基本架构和管理的差异

    尽管Oracle和DB2在核心功能上有很多相似之处,但它们在一些关键领域存在显著差异,如存储过程的使用方式和日志生成机制。以下是两个系统在基本组件方面的对比: - **存储过程**:在Oracle中,存储过程使用PL/SQL...

    Oracle迁移到DB2 SQL语句差异

    **DB2**: 使用`FETCH FIRST`关键字来实现同样的功能。 ```sql SELECT * FROM TableName FETCH FIRST N ROWS ONLY; ``` #### 获取系统当前日期 **Oracle**: 使用`SYSDATE`函数来获取当前日期。 ```sql SELECT ...

    ORACLE移植DB2注意事项

    Oracle中提供了`decode`函数用于条件判断,而在DB2中则使用`CASE WHEN THEN ELSE END`这样的结构来实现相同的功能。例如: ```sql -- Oracle SELECT decode(a.status, 1, 'Active', 0, 'Inactive') AS status_desc ...

    oracle与db2.doc

    以上只是 Oracle 和 DB2 在部分语法和功能上的比较,实际应用中还涉及到索引、事务管理、安全性、性能优化等多个方面。理解这些差异对于数据库管理员来说至关重要,因为它们会影响到数据库设计、开发和维护的效率与...

    ORACLE到DB2应用移植方法探讨.pdf

    "ORACLE 到 DB2 应用移植方法探讨" 本文从应用移植的角度描述了 ORACLE 和 DB2 存在的一些差异,列举了几种移植方案,...ORACLE 到 DB2 的应用移植可以通过多种方法和工具来实现,而 MTK 是其中一种非常有用的工具。

    Oracle和DB2的转换[参照].pdf

    - DB2没有内置的`decode`函数,但可以通过`CASE`表达式实现相同功能,如: ```sql SELECT id, name, CASE WHEN integer(flag) = 0 THEN '假' WHEN integer(flag) = 1 THEN '真' ELSE '异常' END FROM ...

    DB2和 Oracle的并发控制(锁)比较

    ### DB2和 Oracle的并发控制(锁)比较 #### 一、引言 在现代数据库管理系统(DBMS)中,如DB2、Oracle等,事务处理是核心功能之一。事务不仅需要具备原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和...

    DB2兼容模式设置文档

    - **DUAL**:Oracle有一个内置的空表`DUAL`,在DB2中则需要手动创建一个名为`DUAL`的表来实现相同功能。 - **ROWNUM**:Oracle中的`ROWNUM`在DB2中无法直接使用,需要使用子查询结合行计数函数来实现类似功能。 -...

    ORACLE DB2开发中的对比

    在IT行业中,数据库管理系统是数据存储和处理的...综上所述,ORACLE和DB2在SQL语法上有明显的区别,但都能有效地实现各种数据库操作。开发者在选择或迁移数据库时,需要充分理解这些差异,以便更高效地进行开发工作。

    oracle&db2

    Oracle 和 DB2 都是业界知名的...总的来说,Oracle 和 DB2 在SQL语法上存在一定的差异,但都能实现相同的功能。开发人员在使用时需要根据具体环境选择合适的命令。了解这些差异对于跨平台的数据库管理非常有帮助。

    Oracle DBA如何管理DB2

    - 不同数据库系统支持的数据类型存在差异,例如Oracle和DB2的日期时间类型、字符串类型等可能有不同的实现和限制,DBA需要熟悉两者间的转换规则。 4. **数据字典/编目**: - Oracle的数据字典由一系列SYS模式下的...

    DB2和Oracle的区别.pdf

    Oracle支持`REPLACE`函数,但在DB2中需要使用其他方法来实现相同功能。在子查询别名的使用上,Oracle和DB2也有差异,Oracle可以直接使用子查询别名,而DB2在某些情况下可能需要使用`AS`关键字。 关于日期类型的处理...

Global site tag (gtag.js) - Google Analytics