Главная страница
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.021 c
14-74992
Anatoly Podgoretsky
2002-12-04 07:38
2002.12.23
Именинники 4 декабря


14-74929
AndreyAGSoft
2002-12-02 14:39
2002.12.23
Включусь в разработку


7-75026
Aleksey Pavlov
2002-10-17 12:11
2002.12.23
root CIMV2 -> Win32_*


3-74562
Explorer
2002-12-04 13:29
2002.12.23
Перекрыть DBGrid


4-75038
eruc
2002-11-10 07:06
2002.12.23
блокируем все КЛАВИШИ