【正文】
CHAR(18) 2) 找到 _cur(),_b()中定義的 DECLARE,加上SQL,END SQL,做成 SQL BLOCK 的模式,并將其中 ROWID前加 $ 3)找到 OUTER , 在 OUTER TABLE 中的字段前加上 tab_name; 4)查詢 GROUP BY ,ORDER BY ,WITH HOLD做相應(yīng)修改即可。Y39。N39。N39。y39。[Yy]39。999999999939。[09][09][09]39。tex39。RO39。R39。 Data Types Convert INFORMIX data types to ORACLE data types : 2. ROWID ? INFORMIX中為 INTEGER ? ORACLE中為 CHAR(18) ROWIDs INFORMIX rowids are INTEGERs while ORACLE rowids are provided as CHAR(18). ORACLE ROWIDs are physical addresses of the rows. Example of ORACLE 8 rowid : AAAA8mAALAAAAQkAAA 3. OUTER JOINS ? IFX: A,OUTER B … WHERE A01=B01 ? ORA:A,B … WHERE A01= Outer joins INFORMIX SQL SELECT ... FROM a, OUTER(b) WHERE = SELECT ... FROM a, OUTER(b,OUTER(c)) WHERE = AND = AND = ORACLE expects the (+) operator in the join condition SELECT ... FROM a, b WHERE = (+) SELECT ... FROM a, b, c WHERE = (+) AND = (+) AND = (+) 1. Example which does not work : FROM OUTER(tab2), tab1 . 2. Example : WHERE = . 3. Example : SELECT ... UNION SELECT or SELECT ... WHERE col IN (SELECT...) Restrictions 4. Pessimistic Locking ? DECLARE .. FOR UPDATE 的語句 不要加 WITH HOLD ? IFX: DECLARE … FOR UPDATE ORA: DECALRE .. SQL……. FOR UPDATE NOWAIT END SQL ? IFX: OPEN ORA: OPEN FETCH IF … IF …. FETCH…. Pessimistic locking Informix DECLARE cc CURSOR FOR SELECT ... FOR UPDATE [OF collist] OPEN cc FETCH cc lock is acquired CLOSE cc lock is released ?The row must be fetched in order to set the lock. ?If the cursor is local to a transaction, the lock is released when transaction ends. If the cursor is declared WITH HOLD, the lock is released when the the cursor is closed. ORACLE allows individual and exclusive row locking with : SELECT ... FOR UPDATE [OF collist] ?A lock is acquired for each selected row when the cursor is opened, before the first fetch. ?Cursors using SELECT ... FOR UPDATE are automatically closed when the transaction ends。LOGNAME39。而在 ORACLE中代表某個user. ? 訪問數(shù)據(jù)庫進行相關(guān)操作時:INFORMIX中用 db