在Perl的DBI填写占位符之后,如何打印执行的SQL查询?
技术问答
541 人阅读
|
0 人回复
|
2023-09-14
|
我正在使用Perl的DBI模块。我准备使用占位符的语句,然后执行查询。8 x$ o6 n3 \( D. B" z8 v! R2 G
是否可以打印出执行的最终查询而无需手动转义参数并将其放入占位符?
6 u9 R& c+ @: l谢谢
r- t6 q6 [: f1 g% S3 [ t% a
% L7 c+ }/ j, {) F0 Z7 V解决方案:
2 n- `8 N( f# K* ~, N& G
, k0 r# k( M% ~+ r% f+ D! g, M. j
/ u! u/ b6 V1 C! \, \
请参阅DBI中的跟踪。以下使用可以工作,DBD::SQLite但是会产生很多输出:9 b1 {# n1 E( Q2 h, s6 X5 R
$dbh->trace($dbh->parse_trace_flags('SQL|1|test'));4 l8 H) v( N! b, D, n2 K' h
输出:$ \1 z- D9 C$ g7 B) g
- m4 _' z) C& b* V: L' @
+ g Y& `9 s. y7 c等等等- o' r; l/ f0 ^5 l5 I- j1 z2 ^
您可以将自己的过滤器插入跟踪流中,仅保留prepares。 |
|
|
|
|
|