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

Вниз

выполнение sp с параметрами   Найти похожие ветки 

 
Kelly   (2008-09-30 18:31) [0]

При вызове execute ругается что неверно определен объект параметр

/*в процедуре два параметра, один инпут и один аутпут */

with TADOCommand.Create(Self) do
 try
  Connection := ADOConnection1;
  CommandText := "GET_STATE";
  CommandType := cmdStoredProc;
  with Parameters.AddParameter do
   begin
    Name      := "p_source_id";
    DataType  := ftInteger;
    Direction := pdInput;
    Value     := 13879;
   end;

  with Parameters.AddParameter do
   begin
    Name      := "p_out_state";
    DataType  := ftInteger;
    Direction := pdOutput;
   end;
Execute;
....


 
clickmaker ©   (2008-09-30 18:36) [1]

может, собачку надо перед именем?


 
Kelly   (2008-09-30 18:38) [2]

Не помогает. Пробовал и с собачкой и без. Текст ошибки одинаков


 
clickmaker ©   (2008-09-30 18:48) [3]

а в хранимке out стоит у параметра?


 
sniknik ©   (2008-09-30 19:35) [4]

параметры не нужно создавать, их нужно считывать (рефреш вроде пойдет, не помню давно с процедурами как с cmdStoredProc не работал, явным запросом проще)


 
kaif ©   (2008-09-30 20:15) [5]

CommandText := "GET_STATE";

А где здесь в тексте команды место, где подразумевается использование параметра?


 
sniknik ©   (2008-09-30 20:55) [6]

> где подразумевается использование параметра?
при cmdStoredProc это имя процедуры, параметры запрашиваются с сервера, те с которыми процедура написана.


 
Kelly   (2008-10-01 09:44) [7]

в общем после многих научных тыков удалось вызвать эту процу.

Параметры создаю явно как и было описано выше.

(После refresh длина коллеции параметров возвращает верное значение, но экзек все равно заканчивается неудачей, ""экспектс такой-то параметер вич вазнот сапплаед" )
То есть подозреваю, что после рефреша надо все равно явно выставлять  всем параметрам типы, дирекшен и прочее.

Во вчерашнем коде причина ошибки была в том, что есть еще один аутпут параметр строкового типа. Он создавался точно так же, но ему не был указан Size. После указания длины все поехало как надо.

И еще почему-то когда имя процедуры устанавливаешь в дизайне, с помощью редактора командтекст, то все хранимки видны как <оригинальное_имя>;1

То есть в дизайне у меня присвоилось "GET_STATE;1"



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

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

Наверх





Память: 0.46 MB
Время: 0.005 c
8-1194440058
T54
2007-11-07 15:54
2009.06.28
Склеивание видеофайла


2-1241592533
подмастерье
2009-05-06 10:48
2009.06.28
Не работает ComboBox1Change


11-1203187158
andreil
2008-02-16 21:39
2009.06.28
Правильное отображение рисунков в ЛистБоксе


9-1152026361
Frol
2006-07-04 19:19
2009.06.28
математический маятник


15-1240605003
Юрий
2009-04-25 00:30
2009.06.28
С днем рождения ! 25 апреля 2009 суббота





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский