V $ SQL中有很多SQL,其中0为Plan Hash Value(PHV)。当我为该SQL生成计划时,它通过使用以下命令显示一些PHV,
07-16 11:35:58.140: E/AndroidRuntime(5252): FATAL EXCEPTION: main
07-16 11:35:58.140: E/AndroidRuntime(5252): Process: org.avatarsipphone.sipua, PID: 5252
07-16 11:35:58.140: E/AndroidRuntime(5252): java.lang.RuntimeException: Unable to resume activity {org.avatarsipphone.sipua/org.avatarsipphone.sipua.ui.noticall}: java.lang.IllegalStateException: trying to requery an already closed cursor android.database.sqlite.SQLiteCursor@520f4d5
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3103)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3134)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1388)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.os.Handler.dispatchMessage(Handler.java:102)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.os.Looper.loop(Looper.java:148)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.ActivityThread.main(ActivityThread.java:5417)
07-16 11:35:58.140: E/AndroidRuntime(5252): at java.lang.reflect.Method.invoke(Native Method)
07-16 11:35:58.140: E/AndroidRuntime(5252): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
07-16 11:35:58.140: E/AndroidRuntime(5252): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
07-16 11:35:58.140: E/AndroidRuntime(5252): Caused by: java.lang.IllegalStateException: trying to requery an already closed cursor android.database.sqlite.SQLiteCursor@520f4d5
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.Activity.performRestart(Activity.java:6296)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.Activity.performResume(Activity.java:6319)
07-16 11:35:58.140: E/AndroidRuntime(5252): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3092)
07-16 11:35:58.140: E/AndroidRuntime(5252): ... 8 more
但是在执行时它显示0为PHV。为什么有些SQL在V $ SQL视图中的PHV为0?这是否意味着它正在使用默认计划执行?
答案 0 :(得分:3)
您的SQL是否使用数据库链接?如果是,那么您将在远程服务器中看到哈希值。此外,如果SQL查询是PL / SQL块,那么您可能会获得计划哈希值0