Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Где взять функция, которая парсит запрос ?   Найти похожие ветки 

 
infom ©   (2004-10-06 18:25) [0]

Конкретно мне нужно выделить все параметры запроса...
Я б сам написал, но там много подводных камней типа :
если двоеточие в кавычках, т.е. является строкой и т.д.


 
Суслик ©   (2004-10-06 18:27) [1]

да я бы сам написал windows, только вот камней подводных много :))

будь конкретнее. Какой запрос? К чему запрос?


 
}|{yk ©   (2004-10-06 18:28) [2]

Могу выслать примеры к книге Дж.Бакнела, там целая глава про конечные автоматы и регулярные выражения


 
infom ©   (2004-10-06 18:28) [3]

НУ в смысле Sql запрос


 
Суслик ©   (2004-10-06 18:40) [4]


> НУ в смысле Sql запрос

что такое параметры запроса?


 
VID ©   (2004-10-06 18:51) [5]

Суслик ©   (06.10.04 18:40) [4]
что такое параметры запроса?


Update Table1
Set "FIELD1"=:MY_VALUE


 
Игорь Шевченко ©   (2004-10-06 18:52) [6]


> Я б сам написал, но там много подводных камней типа :
> если двоеточие в кавычках, т.е. является строкой и т.д.


Это один камень


 
Суслик ©   (2004-10-06 18:53) [7]


>  [5] VID ©   (06.10.04 18:51)
> Суслик ©   (06.10.04 18:40) [4]

я просто не совсем знаком с терминологией

я пользуясь ADO + MSSQL всегад писал так

"update table1 set cost = ?", где ? место подстановки параметра....

потому и вопрос возник.

Это к какому серверу вообще относится?


 
Knight ©   (2004-10-06 19:08) [8]

А разве TQuery в Delphi этого сам не делает? (давно уже параметры не юзал... может что-то не так помню :)


 
VID ©   (2004-10-06 19:11) [9]

Суслик ©   (06.10.04 18:53) [7]
Это к какому серверу вообще относится?


мой пример относится к InterBase.


 
VID ©   (2004-10-06 19:12) [10]

Суслик ©   (06.10.04 18:53) [7]
Кстати а как бы ты написал такой запрос ?

Update TABLE1
Set "FIELD1" = :MY_VALUE1, "FIELD2" = :MY_VALUE2


 
Knight ©   (2004-10-06 19:18) [11]

А всё-таки чем вам Params-ы не нравятся?


 
DiamondShark ©   (2004-10-06 19:26) [12]

Где-то в недрах DB.pas такая функция есть...
Во, нашёл:

function TParams.ParseSQL(SQL: String; DoCreate: Boolean): String;


 
DiamondShark ©   (2004-10-06 19:29) [13]


> VID ©   (06.10.04 19:12) [10]

А в чём проблема видится?

Update TABLE1
Set "FIELD1" = ?, "FIELD2" = ?


 
VID ©   (2004-10-06 19:33) [14]

т.е. поимённо к параметрам обратиться нельзя, так как имён у параметров в принципе нет, правильно ? Т.е. только поиндексно ?


 
DiamondShark ©   (2004-10-06 19:37) [15]


> VID ©   (06.10.04 19:33) [14]

Именно так. Обращение позиционное.
Сколько вопросиков -- столько и параметров.


 
Mystic ©   (2004-10-06 20:54) [16]

Если из пушки по воробьям, то:

%{
 unit ParamSql;

 interface
 
 function yylex : integer;

 implementation

 uses lexlib;

 procedure AddParam(St: string);
 begin
   WriteLn(St);
 end;
%}

NQUOTE    [^"]

%%

"({NQUOTE}|"")+"   WriteLn(yytext);
:([A-Za-z])+       AddParam(Copy(yytext, 2, Length(yytext)));
.                  ;

%%

end.


:)



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

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

Наверх




Память: 0.5 MB
Время: 0.047 c
3-1096461753
Shaman
2004-09-29 16:42
2004.10.24
Как в sql-запросе на вставку указать значение блоб-поля?


11-1081348876
M5
2004-04-07 18:41
2004.10.24
Фокус не перемещается по TAB


14-1096264817
Slavian
2004-09-27 10:00
2004.10.24
Вирус?


4-1095760732
romario
2004-09-21 13:58
2004.10.24
Буфер обмена.


3-1096342004
NoG
2004-09-28 07:26
2004.10.24
Файл Btr