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

Вниз

Получить значение OUTPUT параметра из хран. процедуры   Найти похожие ветки 

 
Ольга   (2006-02-06 06:46) [0]

Компонента TADOStoredProc лежит на форме. Параметры описаны в дизайнере формы. Выходной - @S varchar(2000) output. Выполняю процедуру из Delphi - получаю пустую строку, хотя в QueryAnalyzer строка возвращается не пустая.
Код в Delphi:

var S: string;

 MyProc.Connection:=FConnect.ADOConn;
 MyProc.Parameters.ParamValues["@obj_type"]:="T";        
 MyProc.Parameters.ParamValues["@obj_name"]:="SHEMA";
 MyProc.ExecProc;
 S:=MyProc.Parameters.ParamValues["@S"];

Что я неправильно делаю?


 
Ega23 ©   (2006-02-06 08:52) [1]

TParameter.Direction   + F1


 
stone ©   (2006-02-06 09:19) [2]

У тебя процедура случайно не в асинхронном режиме выполняется?


 
Ольга   (2006-02-06 15:34) [3]


> TParameter.Direction   + F1

Прописала Direction (хотя думаю, что это излишне - параметры описаны в дизайнере). Эффект тот же.

> в асинхронном режиме

Это я не знаю, что за зверь. Видимо, в режиме по умолчанию.


 
stone ©   (2006-02-06 16:12) [4]


> > в асинхронном режиме
>
> Это я не знаю, что за зверь. Видимо, в режиме по умолчанию.
>

Если у тебя
ExecuteOptions = [eoAsyncExecute]
то
S:=MyProc.Parameters.ParamValues["@S"];
может выполнится быстрее, чем сама процедура.


 
Ольга   (2006-02-06 16:37) [5]

Спасибо, буду знать.
Нет, у меня ExecuteOptions = []
Где еще может быть собака зарыта?


 
k2 ©   (2006-02-07 07:32) [6]

может obj_name  "SСHEMA"? мало ли :)


 
Begin   (2006-03-20 11:35) [7]

Если ты хочешь получить выходной параметр типа ftString или ftWideString, то надо обязательно указывать ожидаемую длину строки :


MyProc.Connection:=FConnect.ADOConn;
MyProc.Parameters.ParamValues["@obj_type"]:="T";        
MyProc.Parameters.ParamValues["@obj_name"]:="SHEMA";


MyProc.Parameters.ParamValues["@S"].Direction := pdOutput;
MyProc.Parameters.ParamValues["@S"].Size := 2000;


MyProc.ExecProc;
S:=MyProc.Parameters.ParamValues["@S"];



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

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

Наверх




Память: 0.48 MB
Время: 0.055 c
15-1145133578
alex-drob
2006-04-16 00:39
2006.05.14
Сеть по модемам


3-1142515092
Aleksandr.
2006-03-16 16:18
2006.05.14
Как отскроллировать DBGrid на несколько записей?


15-1145527072
kilkennyCat
2006-04-20 13:57
2006.05.14
О морфемах, русском языке и школе


4-1140325882
delphi-oracle
2006-02-19 08:11
2006.05.14
Как узнать, является ли юзер админом?


2-1145863414
De
2006-04-24 11:23
2006.05.14
Хочу в потомке реструкторировать предка, возможно ли?