Форум: "Базы";
Текущий архив: 2009.05.24;
Скачать: [xml.tar.bz2];
ВнизODAC. Параметризованные запросы. Найти похожие ветки
← →
checkmate-maker (2008-09-15 09:28) [0]Здравствуйте. Помогите разобраться.
После выполнения следующего участка кода сообщение не выдается(запрос пустой - ничего не вернул, но и не ругался)
var
lOpenSQL: TOpenSQL;
...
lSQLString := "Select sec_name from pr_sec where sec_id = :S_ID";
lOpenSQL := TOpenSQL.CreateWithParams(lSQLString);
try
lOpenSQL.DeclareVariable("S_ID", ftInteger);
lOpenSQL.SetVariable("S_ID", 0);
lOpenSQL.ReOpen;
if not lOpenSQL.IsDone then
ShowMessage(lOpenSQL.FieldAsString(0));
finally
lOpenSQL.Free;
end;
Уточню TOpenSQL класс с приватным FOraQuery: TOraQuery.
Метод CreateWithParams:
FOraQuery := TOraQuery.Create(nil);
FOraQuery.Connection := Form1.OraSession1;
FOraQuery.SQL.Text := SQL;
Метод DeclareVariable:
FOraQuery.Params.CreateParam(AType, AName, ptInput);
Метод SetVariable:
FOraQuery.ParamByName(AName).Value := AValue;
Метод ReOpen:
FOraQuery.Open;
Метод IsDone:
Result := FOraQuery.Eof;
Чтобы исключить лишние уточнения добавлю: запрос без параметров работает "на ура". ODAC 5.1.
Спасибо за помощь.
← →
Поросенок Винни-Пух © (2008-09-15 09:58) [1]Зачем этот изврат?
FOraQuery.Params.CreateParam(AType, AName, ptInput);
← →
Sergey13 © (2008-09-15 10:01) [2]> [0] checkmate-maker (15.09.08 09:28)
> запрос пустой - ничего не вернул, но и не ругался
Ну так наверное нет значений с S_ID=0.
А какой смысл во всех ухищрениях с подменой методов?
← →
Поросенок Винни-Пух © (2008-09-15 10:05) [3]передать из обертки текст sql, установить значение параметра. все.
← →
checkmate-maker (2008-09-15 10:42) [4]Всем спасибо за участие в решении вопроса.
Я разобрался сам. Необходимо было устанавливатьFOraQuery.ParamCheck := false;
Надеюся решение кому-нибудь пригодится. В инете подобного не нашел.
← →
Поросенок Винни-Пух © (2008-09-15 10:43) [5]Это в штатной доке описано черным по белому
← →
ANB (2008-09-15 17:54) [6]
> checkmate-maker (15.09.08 09:28)
Делаем из одака доа ?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2009.05.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.075 c