是否有最高级别的Oracle连接级别?

时间:2017-06-23 14:02:47

标签: sql oracle

我有一个逐级连接查询作为CTE链的一部分。这样运行正常,直到它按级别命中连接,这会导致查询超时。

上面的CTE返回250行,heirarchy的最大ldepth将在13-14级左右。

Integer.equals查询可以返回的深度级数是否有限制?

2 个答案:

答案 0 :(得分:2)

没有

Set WSHShell = WScript.CreateObject("WScript.Shell")
regkey = "HKLM\SYSTEM\CurrentControlSet\services\<registry entry of service you want to check>\Start"
servicestatus="4" ' 4 is disabled, 0 to 3 means automatic or manual service startup
On Error Resume Next
serviceIsOK = 0
If WSHShell.RegRead(regkey) = servicestatus Then
    serviceIsOK = 1
End If
If serviceIsOK = 1 Then
    'put positive response code here
ElseIf Err.Number <> 0 Then
    Err.Clear
    'put registry reading error code here
Else
    'put negative response code here
End If

答案 1 :(得分:2)

级别数受运行时可用内存的限制。从这个角度来看,13-14级是超级安全的。

如果没有其他并发症且问题只是“太多级别&#34;”,则会相对较快地达到内存限制,并在发生这种情况时收到错误消息。如果您的查询运行了很长时间,则必须有其他原因。

最可能的嫌疑是一个不完整的CONNECT BY子句,你没有足够的条件,并且在每个级别都生成了太多的行。这可以在相对较低的级别生成非常多的行。