AskToad.com -- Home of your Toad Oracle KnowledgeBase
Trace: » installation
Differences
This shows you the differences between the selected revision and the current version of the page.
| faq:answers:editor 2009/07/22 17:49 | faq:answers:editor 2009/07/22 17:51 current | ||
|---|---|---|---|
| Line 267: | Line 267: | ||
| Click OK all the way back and all should be well again. | Click OK all the way back and all should be well again. | ||
| - | |||
| - | ====== SQL_Editor ====== | ||
| - | |||
| ===== How can I use TOAD to create and run dynamic SQL? ===== | ===== How can I use TOAD to create and run dynamic SQL? ===== | ||
| Line 481: | Line 478: | ||
| + | ===== Does TOAD support VSS Microsoft Visual Source Safe, version 5 and version 6? ===== | ||
| + | |||
| + | Yes. See the TOAD help file for a list of which source control providers | ||
| + | have been tested with TOAD through the SCC API and which ones have been | ||
| + | tested with Team Coding in TOAD. | ||
| + | |||
| + | |||
| + | ===== Every time I try to step into my procedure, it opens another tab. What is going on? ===== | ||
| + | |||
| + | If you are using TOAD 7.4 or earlier, it's likely that TOAD's parser has | ||
| + | found the wrong name for your procedure. This will happen if your | ||
| + | procedure's name is a word that TOAD recognizes for syntax highlighting | ||
| + | or if you have another object by the same name as your procedure. The | ||
| + | list of words that TOAD uses for syntax highlighting is read from | ||
| + | plsqlscr.txt in your \User Files directory. We recommend upgrading to TOAD | ||
| + | 7.5 or higher, as the procedure editor is now using a completely | ||
| + | different parsing routine. | ||
| + | |||
| + | ===== I have a developer trying to debug using TOAD. He is getting a "probe timeout" error. The debug package is loaded correctly. What should I look at to fix the issue?? ===== | ||
| + | |||
| + | Is there a particular statement that is causing the timeout? If so, | ||
| + | there is a debug timeout value in the debugger page of the options | ||
| + | screen. Make sure it is sufficiently high enough to allow a server | ||
| + | response from whatever statement is being run on the server. If this | ||
| + | doesn't appear to be the problem then make sure the anonymous block that | ||
| + | is being run is valid (copy it to clipboard and try running it in the | ||
| + | SQL window). | ||
| + | |||
| + | ===== When I try to run my procedure through the debugger, I get an error that says "PLS-00201: identifier ... must be declared". ===== | ||
| + | |||
| + | Check to see whether you have an object named the same as the owner of | ||
| + | the procedure. When this is the case, Oracle thinks that the user name | ||
| + | in the anonymous block is actually the object name. We recommend either | ||
| + | renaming the problematic object or manually removing the user name from | ||
| + | the anonymous block in the Set Parameters window. | ||
| + | |||
| + | ===== When debugging (stepping through an object, set break points,) a package, procedure, or function, TOAD displays "debugger is not responding" or TOAD does not respond and the user has to exit TOAD by CTRL + ALT and Delete to exit the application. ===== | ||
| + | |||
| + | Set the following options in TOAD: | ||
| + | - View->Options->Procedure Editor->Only show one Procedure Editor per database connection | ||
| + | - View->Options->Debugging->Compile Dependencies to YES or PROMPT | ||
| + | - View->Options->Debugging->Debug session timeout and increase debug session timeout to 300 (increase to large value if you're expecting long fetch during debugging). | ||
| + | |||
| + | ===== Why is the bug icon and my debugger toolbar disabled? ===== | ||
| + | |||
| + | 3 possible reasons: | ||
| + | - You need to have a license key with the Debugger enabled. | ||
| + | - You need to have DBMS_DEBUG installed on your database. Please see the help file. | ||
| + | - If your server is version 10g, then your session needs to have the "DEBUG CONNECT SESSION" system privilege. | ||
| + | |||
| + | ===== Why is the debugger highlighting the wrong code lines when debugging my package? It looks like it is going through the comment lines. ===== | ||
| + | |||
| + | The problem is that the code that is run when debugging is what is | ||
| + | stored on the server - not the script. When you have a comment block | ||
| + | BEFORE the CREATE statement, it is stripped out and not stored on the | ||
| + | server. Therefore the code that is visible on the screen is NOT the code | ||
| + | that is running. Load the object from the database and you will see what | ||
| + | I mean. If a user wants to preserve the comment block AND have it work | ||
| + | correctly with the debugger, then they need to move the comment block to | ||
| + | BELOW the CREATE statement. | ||
| + | |||
| + | ===== In the debugger, when stepping through code with Shift-F7/F8 and then halting the execution, TOAD does not respond any more ===== | ||
| + | |||
| + | The reason was an ''AFTER SERVERERROR'' trigger. This trigger writes the | ||
| + | last SQL statement, the error message, user and systime into an error | ||
| + | log table. Somehow this trigger conflicts with Oracle's/TOAD's debugging | ||
| + | mechanism. When we disable the trigger, everything works fine. | ||
| + | This is a solution, because on the development machine, where debugging | ||
| + | is mostly done, we don't really need this error logging. On the | ||
| + | production machine, debugging is rare, so the trigger can stay enabled. | ||
| + | |||
| + | //(Contributed by Thomas B)// | ||
| + | |||
| + | ===== How do I debug PL/SQL when connected to a RAC? ===== | ||
| + | |||
| + | When using the PL/SQL Debugger with a RAC database, you must either have an additional entry in your TNSNames.ora file for the connected instance, or you must connect directly to an instance of the cluster without letting the server assign an instance. | ||
| + | |||
| + | During debugging, Toad creates two background sessions for handling debugger calls, called the Target and Debug sessions. These two sessions must be created on the same instance as the main Toad session, because Oracle does not support Debugging across RAC instances. | ||
| + | |||
| + | To accomplish this, Toad queries the data dictionary to find the current instance name, then searches the TNSNames.ora file, starting at the beginning, for the first entry which has either the SERVICE_NAME or INSTANCE_NAME equal to the name found in the data dictionary. Toad will then use this secondary TNSNames entry when creating the background debugger sessions. | ||
| + | |||
| + | For example, in a two node RAC environment, a user would have their main RAC entry looking something like this: | ||
| + | |||
| + | RAC = | ||
| + | (DESCRIPTION = | ||
| + | (ADDRESS_LIST = | ||
| + | (ADDRESS = (PROTOCOL = TCP)(HOST = 192.0.0.1)(PORT = 1521)) | ||
| + | (ADDRESS = (PROTOCOL = TCP)(HOST = 192.0.0.2)(PORT = 1521)) | ||
| + | ) | ||
| + | (LOAD_BALANCE = ON) | ||
| + | (CONNECT_DATA = | ||
| + | (SERVICE_NAME = RAC) | ||
| + | (FAILOVER_MODE = | ||
| + | (TYPE = SELECT) | ||
| + | (METHOD = BASIC) | ||
| + | (RETRIES = 180) | ||
| + | (DELAY = 5) | ||
| + | ) | ||
| + | ) | ||
| + | ) | ||
| + | |||
| + | In this two node environment, the user would then need to have two additional TNSNames entries, one each for the individual instances in the RAC. In these entries, the can either use the syntax: | ||
| + | |||
| + | RAC1 = | ||
| + | (DESCRIPTION = | ||
| + | (ADDRESS_LIST = | ||
| + | (ADDRESS = (PROTOCOL = TCP)(HOST = 192.0.0.1)(PORT = 1521)) | ||
| + | ) | ||
| + | (CONNECT_DATA = | ||
| + | (SERVICE_NAME = RAC) # notice the difference | ||
| + | (INSTANCE_NAME = RAC1) # betwen this | ||
| + | ) | ||
| + | ) | ||
| + | Or: | ||
| + | |||
| + | RAC2 = | ||
| + | (DESCRIPTION = | ||
| + | (ADDRESS_LIST = | ||
| + | (ADDRESS = (PROTOCOL = TCP)(HOST = 192.0.0.2)(PORT = 1521)) | ||
| + | ) | ||
| + | (CONNECT_DATA = | ||
| + | (SERVICE_NAME = RAC2) # and this | ||
| + | ) | ||
| + | ) | ||