Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.016 c
14-74901
Николай Быков
2002-12-01 12:02
2002.12.23
Посоветуйте принтер до 3000 рублей, но можно и до 3500 р.


14-74898
Hooch
2002-12-04 13:16
2002.12.23
Регистрация Delphi 7


14-74959
AK-74
2002-12-01 22:54
2002.12.23
Опрос:


14-74949
Hill1
2002-12-02 17:44
2002.12.23
CreateProcess


7-75017
dma77
2002-10-20 12:56
2002.12.23
Процедуры COM порта (стандартные)




   Наверх