在DB2中如何實現Oracle的相關功能(三)

oracle

在DB2中如何實現Oracle的相關功能(三)
作者﹕CCBZZP
    在現實的應用中大家可能經常會遇到在DB2中如何實現Oracle的某些功能﹐
在此我簡單地總結一下﹐實現某一功能可能會有很多種方法﹐在此就沒有全部列出﹐
歡迎大家繼續﹐以便和大家共享﹐共同探討﹐共同近步﹗(以下主要以Oracle
8I,9I和DB2 7.X為例)。
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, ...)

  待續...

 

 

时间: 2024-08-04 08:22:47

在DB2中如何實現Oracle的相關功能(三)的相关文章

在DB2中如何實現Oracle的相關功能(一)

oracle 在DB2中如何實現Oracle的相關功能(一)作者﹕CCBZZP    在現實的應用中大家可能經常會遇到在DB2中如何實現Oracle的某些功能﹐在此我簡單地總結一下﹐實現某一功能可能會有很多種方法﹐在此就沒有全部列出﹐歡迎大家繼續﹐以便和大家共享﹐共同探討﹐共同近步﹗(以下主要以Oracle8I和DB2 7.X為例). 1.如何取一表前n筆記錄的Oracle和DB2的寫法  Oracle 可以這樣實現﹕   Select * from user.bsempms where row

在DB2中如何實現Oracle的相關功能(二)

oracle 在DB2中如何實現Oracle的相關功能(二)作者﹕CCBZZP    在現實的應用中大家可能經常會遇到在DB2中如何實現Oracle的某些功能﹐在此我簡單地總結一下﹐實現某一功能可能會有很多種方法﹐在此就沒有全部列出﹐歡迎大家繼續﹐以便和大家共享﹐共同探討﹐共同近步﹗(以下主要以Oracle8I,9I和DB2 7.X為例).1.如何查看數据庫的版本的Oracle和DB2的寫法  Oracle 可以這樣實現﹕  SQL> connect system/manager124@test

在DB2中如何實現Oracle的相關功能(四)

oracle  在DB2中如何實現Oracle的相關功能(四)作者﹕CCBZZP        在現實的應用中大家可能經常會遇到在DB2中如何實現Oracle的某些功能﹐在此我簡單地總結一下﹐實現某一功能可能會有很多種方法﹐在此就沒有全部列出﹐歡迎大家繼續﹐以便和大家共享﹐共同探討﹐共同近步﹗(以下主要以Oracle8I,9I和DB2 7.X為例).1.如何實現分頁顯示的Oracle和DB2的寫法  Oracle 可以這樣實現﹕  SQL>select rownum,* from BSEMPMS

如何在FOXPRO的REPORT中實現列印條碼功能

如何在FOXPRO的REPORT中實現列印條碼功能 作者﹕CCBZZP       以下是我以前做的一個在FOXPRO的FORM調用REPORT中實現列印條碼功能(主要是39條碼),現在將代碼共享給大家,希望能給各位帶來幫助! 1. 首先將字体文件C39HDW3.TTF拷貝到你的電腦的FONTS目錄下.2. 在窗体FORM中新增加兩個程序BC_CODE39和BC_OCODE393. 程序BC_CODE39的內容是:  Parameters m  rtnp = THISFORM.BC_OCode3

VB中類模塊實現與C++中類實現的比較(1)

c++ VB6.0從本質上說不是一種純面向對象的語言,而是一種基於對象的語言.換句話就是面向對象的簡化,去除了一些對於初學者可能理解比較困難的面向對象的語言元素(例如繼承,重載...),使原來習慣使用面向過程語言編程的程序員開發起來更加得心應手. 但正是由於對Basic的使用慣性,導致在用VB6.0開發軟件時忽略了它對基於對象的支持.這個很像我們以前習慣用C來寫程序,一旦換成了C++,寫出來的程序還是函數調用函數,一點面向對象的思想都沒有,只不過是多利用了一些C++的關鍵字而已.其實面向對象方法

如何在ORACLE中實現人民幣大寫的轉換

oracle 如何在ORACLE中實現人民幣大寫的轉換 作者:   CCBZZP        ORACLE在實現報表的功能是很強大的, 特別在現實的應用中會經常用到人民幣大小寫轉換的問題, 在此我寫個函數向大家簡單介紹一下, 希望和大家一起探討, 以便共同進步! 共同發展! 1. 函數DX_MONEY() CREATE FUNCTION  DX_MONEY(  MONEY IN NUMBER)RETURN VARCHAR2 AS V_MONEY VARCHAR2(150);RV_MONEY0

如何在FOXPRO中實現人民幣大寫的轉換

FOXPRO中人民幣大寫轉換的實現 作者:   CCBZZP        FOXPRO在實現報表的功能是很強大的, 特別在現實的應用中會經常用到人民幣 大小寫轉換的問題, 在此我簡單介紹一下, 希望和大家一起探討, 以便共同進步! 共同 發展! 假如 變量 MONEY 是我們要轉換的參數,我們在程序(*.PRG)中這樣寫:   PARA MONEYIF MONEY>999999999.99    RETURN ('<數值大于拾億! >')ENDIFIF ABS(MONEY)<1 

如何實現在網頁中輸入的數據保存到數據庫中

问题描述 在vs2005中我創建了一個頁面,上面有幾個文本框,一個綁定了數據庫的gridview控件,現想實現把輸入在文本框中的內容顯示在gridview數據表格中.請各位高手指點如何用C#代碼實現(可增加控件) 解决方案 解决方案二:C#高手一般不来VC版面.解决方案三:HTML代码<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.aspx.cs"Inherits=&q

Oracle中的rownum与DB2中的row_number()over()

问题描述 Oracle中的rownum与DB2中的row_number()over() select rownum , m.* from (select '汇总' as MENUNAMES,count(*) as NUMCOUNT from PEVENTRECORD where (EVENT='CLICK' OR EVENT = 'VIEW') AND TO_CHAR(TRANSTIME,'yyyy-MM-dd') >= '2015-02-02' AND TO_CHAR(TRANSTIME,'y