Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / динамический запрос + TADOStoredProc / 6 сообщений из 6, страница 1 из 1
10.09.2003, 08:46
    #32260677
Egik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамический запрос + TADOStoredProc
в- общем трабла такая
на sqlserver-e лежит процедурка, с 20 входными параметрами
(у всех по дефаулту стоит ='')
в ней генерится динамический запрос,
ну и в конце
@sqlstr='select ... from ... where ...'
exec (@sqlstr)
запускаю в QA всё пучком, возвращаются нужные записи,
сделал компонент TADOStoredProc связал с процедурой,заполнил параметры, и....
нифига
не видит она результаты , в чем дело????
...
Рейтинг: 0 / 0
10.09.2003, 10:22
    #32260809
GroZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамический запрос + TADOStoredProc
Не ипользуеш ли ты случаем в параметрах процедуры тип bit?
Такое бывает если этому параметру не передавать никакое значение ... баг вообщем, нужно присвоить что-нибудь всем bit параметрам.
...
Рейтинг: 0 / 0
10.09.2003, 10:48
    #32260841
Egik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамический запрос + TADOStoredProc
не использую.

но я кажется понял, в чем дело.
похоже дельфя как то некорректно переносит пустые (null) параметры
...
Рейтинг: 0 / 0
10.09.2003, 11:07
    #32260865
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамический запрос + TADOStoredProc
А set nocount on стоит в начале процедуры?
...
Рейтинг: 0 / 0
10.09.2003, 11:27
    #32260906
UU
UU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамический запрос + TADOStoredProc
скорей всего параметры передаются неверно, посмотри профайлером чего там выполняется.
...
Рейтинг: 0 / 0
19.09.2003, 03:25
    #32269758
Oleg K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамический запрос + TADOStoredProc
ИМХО - лучше использовать ADOCommand


AdoCommand.CommandText:= Динамически составленная строка
AdoCommand.Execute;

а лучше написать функцию и ею пользоваться:


function SendCommand(const S: WideString): WordBool;
begin
TRY
aComm.CommandText:=S;
aComm.Execute;
RESULT:=True;
EXCEPT
On E: Exception Do
begin
RESULT:=False;
ShowMessage('SendCommand - '+S+#13#10+E.Message); //или свою процедуру
end;
END;
end;

только в Пропертях поставь так:
ADOCOmmand -> ExecuteOption -> eoExecuteNoRecord = True
для выдачи ошибки в случае ее возникновения...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / динамический запрос + TADOStoredProc / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]