Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как выполнить хранимую процедуру с параметрами [MSSQL]


dreamse ©   (2005-02-06 17:29:00) 

без возвращения результата. П оидее мне нужно просто передать данные на сервер чтобы они записались в базу. Пытаюсь использовать компонент ADOCommand1
Вот код :

ADO_send_jurnal.Connection:=TADOConnection(PluginInterFace1.FindComp('ADOConnection1'));
ADO_send_jurnal.CommandText:='procClearStatusList';
ADO_send_jurnal.Parameters.Refresh;
ADO_send_jurnal.Parameters.ParamByName('@Server').Value:=getip;
ADO_send_jurnal.Parameters.ParamByName('@Comp').Value:=slist.Strings[0];
ADO_send_jurnal.Parameters.ParamByName('@Period').Value:=slist.Strings[1]; // name_period
ADO_send_jurnal.Parameters.ParamByName('@IndDAte').Value:=datetostr(date);
ADO_send_jurnal.Parameters.ParamByName('@indTime').Value:=timetostr(time);
ADO_send_jurnal.Parameters.ParamByName('@Operashia').Value:=slist.Strings[2]+usersdasha;
ADO_send_jurnal.Parameters.ParamByName('@Summa').Value:=slist.Strings[3];
ADO_send_jurnal.Parameters.ParamByName('@NameUser').Value:=slist.Strings[4];
ADO_send_jurnal.Parameters.ParamByName('@Prim').Value:=slist.Strings[5];
ADO_send_jurnal.Execute;

И код хранимой процедуры :

CREATE procedure AddDataJurnal (@Server Char(15), @Comp char(10), @Period char(10), @IndDAte char(10),@indTime char(10), @Operashia char(150),@Summa char(10), @NameUser char(40), @Prim char(100))

AS

Insert Into Tab_Jurnalseansov
Values (@Server,@Comp,@Period,@IndDAte,@indTime,@Operashia,@Summa,@NameUser,@Prim)

GO

Не хочет работать код отправки на базу


sniknik   (2005-02-07 01:46:00) [1]

если пишеш имя процедуры в CommandText то указывай и тип cmdStoredProc в CommandType, EXEC тогда необязателен (даже вреден) параметры тогда должно правильно разобрать(и найдет). (с EXEC/и cmdText тоже можно но тогда надо явно и параметры после процедуры писать)

это после того как исправищ
> ADO_send_jurnal.CommandText:=' procClearStatusList';

> И код хранимой процедуры :
> ... AddDataJurnal


Nikolay M.   (2005-02-06 20:53:00) [2]


> Я в этом коде пытаюсь передать в процедуру переменные (
> различные параметры )

Ну так и чем тебе в этом ADOStoredProc не угодил?


> если ссылки на документацию есть поделитесь если можно

BOL, дельфевый хелп, sql.ru.


dreamse   (2005-02-06 19:49:00) [3]

> Nikolay M. ©   (06.02.05 19:40) [3]

>  И, кстати, может все-таки EXEC procClearStatusList?

Точно ошибка сдесь ... не ту процедуру указал :)

Ну если ссылки на документацию есть поделитесь если можно


dreamse   (2005-02-06 19:48:00) [4]

> Nikolay M. ©   (06.02.05 19:40) [3]

Я тут совсем запутался ...
Выполнять процедуры я умею.

Я в этом коде пытаюсь передать в процедуру переменные ( различные параметры )

Может у кого нибудь есть ссылка на документацию по работе с хранимыми процедурами SQL ( работа с переменными )


Nikolay M.   (2005-02-06 19:40:00) [5]

А зачем так xtcfnmcz? Банальный ADOStoredProc не подойдет? И, кстати, может все-таки EXECprocClearStatusList?


dreamse   (2005-02-06 19:18:00) [6]

При переходе на превую строку
ADO_send_jurnal.Parameters.ParamByName('@Server').Value:=getip;

Говорит что переменная @Server не найдена , хотя на SQL я процедуру собрал , скорей всего я не могу правельно присвоить ADO_send_jurnal эту процедуру ( указать в смысле на неё )


aus   (2005-02-06 19:07:00) [7]

Так и пишет "не хочу", или все же есть какое-то сообщение об ошибке?


Наверх

Титульная страница Поиск, карта сайта Написать письмо