Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.30;
Скачать: 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 вся ветка

Текущий архив: 2007.09.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
2-1188969414
alshtam
2007-09-05 09:16
2007.09.30
печать


1-1184745100
Dr. Andrew
2007-07-18 11:51
2007.09.30
Как создать WordWrap для длинной строки?


3-1180202064
Valkyre
2007-05-26 21:54
2007.09.30
Не регистрируется подключение


3-1179483915
Parenek
2007-05-18 14:25
2007.09.30
как узнать, добавлена ли запись ?


2-1188891080
6aM6y4a
2007-09-04 11:31
2007.09.30
Дизассемблер