Вниз
Скачать: CL | DM;

Как получить SQL текст с подставленными параметрами?   Найти похожие ветки 

← →
Vlad Oshin ©   (2007-09-06 13:59) [0]

кроме как руками?

     id:=1;
     ADOquery1.SQL.Add("select * from tbHistory where id=:p1");
     ADOquery1.Parameters.ParamByName("p1").Value := id;
     log("qqqqqqqqqqqqqqqqqqqqqqqqqqqq");
     log(ADOquery1.SQL.Text);
     log("qqqqqqqqqqqqqqqqqqqqqqqqqqqq");

---------------
имеем в логе:
qqqqqqqqqqqqqqqqqqqqqqqqqqqq
select * from tbHistory where id=:p1
qqqqqqqqqqqqqqqqqqqqqqqqqqqq

а надо:
select * from tbHistory where id=1


← →
Desdechado ©   (2007-09-06 14:00) [1]

Значения параметров улетаютна сервер отдельным механизмом, не в контексте SQL-запроса. Поэтому к тексту как к таковому их не отнесешь.


← →
Ega23 ©   (2007-09-06 14:09) [2]

В TRxQuery было свойство RealSQL : TStrings

В адошном такого нет.
Да ты посмотри профайлером, в каком виде запрос на сервер летит, всё сразу ясно станет...  :)


← →
Vlad Oshin ©   (2007-09-06 14:15) [3]


> Ega23 ©   (06.09.07 14:09) [2]

да это все понятно,
да и легче функцию написать
stringreplace от ADOquery1.SQL.Text по :p1 и т.п.
или log() по всем параметрам

но муторно,
то, на что не хочешь тратить время - как раз больше всего времени и занимает


← →
Palladin ©   (2007-09-06 14:16) [4]


> Vlad Oshin ©

А зачем тебе это?
Телепатор подсказывает для вывода в лог. Если телепатор прав, то выводи отдельно SQL с параметрами и отдельно значения самих параметров в читаемом виде.


← →
Anatoly Podgoretsky ©   (2007-09-06 14:20) [5]

> Vlad Oshin  (06.09.2007 13:59:00)  [0]

Никак, кроме как руками
Значения параметров никогда в запрос не входят.


← →
Anatoly Podgoretsky ©   (2007-09-06 14:21) [6]

> Ega23  (06.09.2007 14:09:02)  [2]

RealSQL для параметров будет примерно такой select * from tbHistory where id=?
Это там наверно из-за поддержки макросов.


← →
Anatoly Podgoretsky ©   (2007-09-06 14:27) [7]

> Vlad Oshin  (06.09.2007 14:15:03)  [3]

Ну какая муторность, когда есть массив и текст запроса, слева направо меняем, единственная сложность определить окончание имени параметра.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
15-1186565545
EvChul
2007-08-08 13:32
2007.09.30
Посоветуйте компоненты для ГИС


2-1188816975
Layner
2007-09-03 14:56
2007.09.30
Определить уникальный номер Windows Registered to (2000-XP-Vista)


15-1188581516
Alex.rus
2007-08-31 21:31
2007.09.30
DOS


1-1184871572
TUser
2007-07-19 22:59
2007.09.30
Turbo Delphi


5-1161675753
Sansy
2006-10-24 11:42
2007.09.30
dll при создании компоненты




   Наверх