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

Вниз

Выполнение хранимой процедуры   Найти похожие ветки 

 
robi ©   (2002-11-13 15:28) [0]

Здравствуйте, уважаемые знатоки! Вот такая проблемка:
на сервере есть ХП на обновлении записи

CREATE PROCEDURE dbo.UpdateAgent
@Name varchar(40),
AS
begin transaction
update dbo.Abonent
set
Name = @Name
commit transaction
GO

в приложении вызывается эта процедура

procedure TChangeAbonentForm.OkClick(Sender: TObject);
begin
with UpdateProc do begin
UpdateProc.Parameters.ParamByName("@Name").Value:=NameEdit.Text;
UpdateProc.ExecProc;
end;
Close;
end;


приложение выполняет ее и закрывается
Но! Захожу в Enterprise, открываю таблицу, ИЗМЕНЕНИЙ нет!
Может я чего-то не догоняю? Помогите, пожайлуста!


 
Mike_Goblin ©   (2002-11-13 15:32) [1]

1. ХП итак работает внутри транзакции, begin transaction commit transaction не нужны
2. Стоит ли для такого простого действия писать ХП?


 
Kaban ©   (2002-11-13 15:34) [2]

with UpdateProc do begin
UpdateProc.Parameters.ParamByName("@Name").Value:=NameEdit.Text;
UpdateProc.ExecProc;
end;

Интересный синтаксис


 
robi ©   (2002-11-13 15:42) [3]

1.Попробовал без begin transaction commit transaction, все равно не обновляет
2.Я решил отказаться от ипользования ст.методов и перейти на ХП


 
Андрей Прокофьев ©   (2002-11-13 15:49) [4]

Хорошо бы узнать, чему равно UpdateProc.ProcedureName


 
Андрей Прокофьев ©   (2002-11-13 15:50) [5]

Set the Prepared property to True


 
robi ©   (2002-11-13 16:02) [6]

>Андрей Прокофьев
UpdateProcProcedureName=UpdateAgent

Prepared - true


 
robi ©   (2002-11-13 16:10) [7]

Есть еще одна процедура InsertProc

with InsertProc do begin
InsertProc.Parameters.ParamByName("@Name").Value:=NameEdit.Text;
InsertProc.ExecProc;

Выполняется корректно, т.е в базе добаляется запись.
Почему не выполняется Update?


 
Андрей Прокофьев ©   (2002-11-13 16:10) [8]

CREATE PROCEDURE dbo.UpdateAgent
@Name varchar(40),
AS

тут зяпятая лишняя. значит процедура не такая, как Вы писали


 
robi ©   (2002-11-13 16:13) [9]

>Андрей Прокофьев Извиняюсь, ошибочка. В базе естесно, без запятой

:((


 
Андрей Прокофьев ©   (2002-11-13 16:36) [10]

У меня Ваш пример работает нормально.
Проверьте Connection :))



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

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

Наверх




Память: 0.49 MB
Время: 0.019 c
3-4183
REP
2002-11-13 10:11
2002.12.02
Открытие в TQuery таблицы с другим расширением (Не DBF)


1-4505
Птщь
2002-11-20 20:43
2002.12.02
Stupid quastion!


1-4459
Азазелло
2002-11-20 12:33
2002.12.02
Crystal Report 8.5 + VCL


1-4445
Eugenex
2002-11-20 10:49
2002.12.02
DLL на старте отсутствует!


14-4586
vopros
2002-11-11 09:17
2002.12.02
Эпопея или любовные похождения продолжаються