Как найти в файле протоколирования значения параметров для параметризованных SQL-запросов?
Порядок действий:
-
включить полное протоколирование работы ядра СУБД (например, с помощью ключа
/LOGALL
в командной строке запуска ядра СУБД). -
выполнить параметризованный SQL-запрос, например, в утилите «Командный интерфейс» (inl):
set log on; select count(*) from auto where make=?; FORD set log off;
В результате в файл протоколирования будут добавлены записи типа:
!:E=0:T=12:37:29.551:XPid=15112:XTid=5392:C=14: ?TRAN:T=12:37:29.551:XPid=15112:XTid=5392:C=14:L=65535:P=402702336: select count(*) from auto where make=?; !:E=0:T=12:37:29.561:XPid=15112:XTid=5392:C=14:H=58424:L=332: ?EXEC:T=12:37:29.561:XPid=15112:XTid=5392:C=14:L=65535:H=58424:S=332: XPar(1|1[4])='FORD': 4A01000000C01C000100010038E400004801000030010000FAFF00000020 0000FFFF00001400010000CCFFFFFFFF0101040000000001000002B8ED01 0000000000B8ED01000000000000FFFF0100010002000100040001000100 0000000001000100000000000001180018000000000000FFFFFFAD000000 01000000FFFF0200FFFF010001000000010000000100000000000000FFFF 0000000000040000FFFF00000000000001007B0400001400010000CC0200 00000000FFFF01000400020A00CC000001000300000000FFFFFF00001400 010000CC0200020000000000FFFF1400010000CC02000D00800000000000 01000A0000CC0000050000000000FFFF0400020A00CC000003000500FFFF 140000000100010000000000FF000300000000000200000000000001FFFF AD00000000000010464F5244000000000000000000000000000000000000 0000 !:E=0:T=12:37:29.561:XPid=15112:XTid=5392:C=14:A=1: ?GETA:T=12:37:29.561:XPid=15112:XTid=5392:C=14:L=0: !:E=0:T=12:37:29.561:XPid=15112:XTid=5392:C=14: ?GETA:T=12:37:29.561:XPid=15112:XTid=5392:C=14:L=3914: !:E=0:T=12:37:29.561:XPid=15112:XTid=5392:C=14: ?GETM:T=12:37:29.561:XPid=15112:XTid=5392:C=14:I=0:L=65535:K=13107: !:E=2:T=12:37:29.561:XPid=15112:XTid=5392:C=14: ?:T=12:37:29.561:XPid=15112:XTid=5392:C=14:L=65535:P=402653184:R=0:
-
с помощью любого простого текстового редактора выполнить поиск элементов вида
XPar
. Найденная строка видаXPar(1|1[4])='FORD'
содержит информацию о значении подставленного параметра, с которым был выполнен SQL-запрос.