ORA-01788: CONNECT BY clause required in this query block

tolywang發表於2009-10-28

Oracle9i 的某些Object (比如VIEW)轉移到10g後會有一些報錯現象 。如下

 

錯誤內容:

ORA-01788: 此查詢塊中要求 CONNECT BY 子句

說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆疊跟蹤資訊,以瞭解有關該錯誤以及程式碼中導致錯誤的出處的詳細資訊。

異常詳細資訊: System.Data.OracleClient.OracleException: ORA-01788: 此查詢塊中要求 CONNECT BY 子句


源錯誤:

執行當前 Web 請求期間生成了未處理的異常。可以使用下面的異常堆疊跟蹤資訊確定有關異常原因和發生位置的資訊。 

堆疊跟蹤:


[OracleException (0x80131938): ORA-01788: 此查詢塊中要求 CONNECT BY 子句
]
   System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle, Int32 rc) +203
   System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior. behavior, Boolean needRowid, OciRowidDescriptor& rowidDescriptor, ArrayList& resultParameterOrdinals) +1018
   System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior. behavior, ArrayList& resultParameterOrdinals) +25

解決方法:

用dba身份執行以下語句:

alter system set "_allow_level_without_connect_by"=true scope=both  

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-617620/,如需轉載,請註明出處,否則將追究法律責任。

相關文章