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

Вниз

SQL 2000 + ADO + Delphi   Найти похожие ветки 

 
Belov ©   (2002-12-04 13:57) [0]

Помогите, кто может
Ситация в следующем
есть скрипт

create procedure test as
begin
insert into TABLE (Field1, Field2) values (@Value1, @Value2)
if @@error <> 0 goto error
return

error:
raiserror()
return

end

Пихаю это скрипт в ADOQuery1.SQL
вызываю ADOQuery1.ExecSQL;

Дельфи материться
В результате экспериментов было установлено, что матерится она на символ двоеточия, т.к. после него она ожидает параметр, которого ессесено нет.

Вопрос КАК это обойти


 
Jee ©   (2002-12-04 14:01) [1]

if @@error <> 0 raiserror()


 
stone ©   (2002-12-04 14:03) [2]

1. В теле процедуры используются параметры, которых нет ни в объявлении процедуры, и не объявлены в теле процедуры
2. Для выполнения скриптов лучше использовать TADOCommand


 
Belov ©   (2002-12-04 14:18) [3]

>stone
1. Извини, я их не указал в примере просто из-за невнимательности, но это не меняет суть дела.
2. При ADOCommand происходит тоже самое

>Jee
Да, не спорю можно и таким образом обойти, но у меня в процедуре порядке 8 инсертов и после каждого писать

if @@error <> 0
begin
raiserror ()
rollback transaction
return
end

Согласись, это не совсем...


 
Belov ©   (2002-12-04 14:23) [4]

Все, разобрался.
Спасибо всем, кто пытался помочь



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
14-74995
Ketmar
2002-12-03 21:13
2002.12.23
test


6-74872
Barman
2002-10-19 10:54
2002.12.23
Поймать сообщение net send


1-74766
JC
2002-12-06 12:42
2002.12.23
Как приостановить выполнение процедуры, чтоб все остальные


7-75006
calmterror
2002-10-19 22:03
2002.12.23
Запуск программы из сервиса


14-74908
Феликс
2002-11-30 21:49
2002.12.23
Альтернатива Mediaplayer?