Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];

Вниз

Параметры в StoredProc   Найти похожие ветки 

 
Akni   (2003-09-03 14:45) [0]

Ув. Мастера, помогите разобраться с описанием параметров для хранимой процедуры.

Ситуация такая:
на сервере есть процедура, описана так:

procedure StatPr(in UserId integer,in StartDate DATETIME,in EndDate DATETIME)
result(Kind integer,Count numeric(10,2))

Процедура работающая, на выходе получается табличка с двумя полями: Kind,Count

В приложении пытаюсь вызвать ее таким образом:
with StoredProc1 do
begin
StoredProcName:="StatPr";
for i:=0 to 2 do //присвоить значение IN-параметрам
Params[i].AsString:=ParArray[i];
Prepare;
ExecProc; //здесь ошибка
GetResults;
end;

В итоге получаю сообщение об ошибке, что не все параметры переданы.

Как мне корректно передать и получить параметры для процедуры такого вида?


 
Nikolay M.   (2003-09-03 14:51) [1]

1) Типы параметров StoredProc1 в дизайне правильно описаны?
2) Попробуй не Params[i].AsString, а Params[1(2)].AsDateTime :=
3) В каком-нибудь SQL Explorer или наподобие него запрос
SELECT * FROM StatPr (1, "1.1.2001", "2.2.2002") (или как правильно в Sybase) нормально проходит?


 
Akni   (2003-09-03 15:07) [2]

1. Что понимается под "в дизайне"?
Если в Object Inspector, то там все нормально - и DataType, и ParamType
2. явное задание типа параметров
Params[0].AsInteger:=StrToInt(ParArray[0]);
Params[1].AsDateTime:=strtodatetime("02.07.2003");
Params[2].AsDateTime:=strtodatetime("03.07.2003");


результатов не дало. Все равно ругается на неправильное кол-во параметров. Причем именно на кол-во, а не на формат или еще что-то.

3. call StatPr("1", "2003-07-01", "2003-07-04") в Sybase выполняется без проблем.
(Когда передаю дату из Delphi в Sybase как string, то именно в формате yyyy-mm-dd. Она так в Sybase хранится)


 
Nikolay M.   (2003-09-03 15:59) [3]

Досадно :(

Может, где-то хочет указания выходных параметров Kind integer,Count numeric(10,2)?


 
Akni   (2003-09-03 16:12) [4]

все, уже разобралась.
при выборе в Object Inspector имени процедуры Delphi автоматически сформировал список параметров, включив туда и входящие, и выходящие. Удаление из этого списка двух "лишних" параметров Kind,Count (или динам. задание имени процедуры и динам. формирование списка парам. в run-time) решило все мои проблемы.


 
Nikolay M.   (2003-09-03 16:15) [5]

Собственно, так и предположил...



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

Форум: "Базы";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.011 c
3-82129
Рома
2003-09-04 12:47
2003.09.25
У кого есть какие наработки, решения по организауии групп в


1-82323
jiura84i
2003-09-13 16:53
2003.09.25
Тестирование и отладка приложений!


14-82410
Soft
2003-09-01 18:39
2003.09.25
Счастливы ли сумасшедшие?


14-82437
vidiv
2003-09-08 07:00
2003.09.25
где взять php_gd.dll с подержкой gif и для PHP4.3.2 ?


4-82563
Igor__
2003-07-20 17:27
2003.09.25
SetDIBits + 256 цветов = нехорошо





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский