2012-08-17 76 views

回答

0

你不能直接取LONG到LOB。您可能希望先將其轉換爲VARCHAR2

+0

我發現這樣做的是這樣的:HTTP://psoug.org/reference/long2clob.html – Victor 2012-08-17 21:15:19

+0

那是共享的好workaround.thanks。我使用LONG類型在使用舊DB的任務中工作,並且發現最好更改列類型。 – burnDB 2012-09-07 18:34:54

1

您可以將此函數僅應用於LONG或LONG RAW列,並且只能在INSERT語句中的子查詢的選擇列表中應用。

1

我建議一個這樣的解決方法,希望這有助於某人。

SELECT substr(Y.longtoclob, 
      43 + length('ALIASLONG'), 
      DBMS_LOB.GETLENGTH(Y.longtoclob) - 
      2 * (32 + length('ALIASLONG'))) longtoclob 
    from dual, 
    (select (dbms_xmlgen.getxml('SELECT t.column_long ALIASLONG 
    FROM TABLE_LONG_CLOB t WHERE t.id = 2')) longtoclob 
     from dual) Y where DBMS_LOB.GETLENGTH(Y.longtoclob) > 0