Debugging
Debugging a Single Query
toSQL
Name
Type
Required
Default
Description
showBindings
boolean
false
false
If true, the bindings for the query will be substituted back in where the question marks (?
) appear.
Returns the SQL that would be executed for the current query.
The bindings for the query are represented by question marks (?
) just as when using queryExecute
. qb can replace each question mark with the corresponding cfqueryparam
-compatible struct by passing showBindings = true
to the method.
If you want to show the SQL that would be executed for the update
, insert
, updateOrInsert
, or delete
methods, you can pass a toSQL = true
flag to those methods. Please see those individual methods for more information.
tap
Name
Type
Required
Default
Description
callback
Function
true
A function to execute with a clone of the current query.
Executes a callback with a clone of the current query passed to it. Any changes to the passed query is ignored and the original query returned.
While not strictly a debugging method, tap
makes it easy to see the changes to a query after each call without introducing temporary variables.
dump
Name
Type
Required
Default
Description
showBindings
boolean
false
false
If true, the bindings for the query will be substituted back in where the question marks (?
) appear.
All other writeDump
arguments are supported.
A shortcut for the most common use case of tap
. This forwards on the SQL for the current query to writeDump
. You can pass along any writeDump
argument to dump
and it will be forward on. Additionally, the showBindings
argument will be forwarded on to the toSQL
call.
Debugging All Queries
cbDebugger
LogBox Appender
qb is set to log all queries to a debug log out of the box. To enable this behavior, configure LogBox to allow debug logging from qb's grammar classes.
ColdBox Interception Points
Last updated
Was this helpful?