Форум: "Базы";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];
Вниз
Подтвердить транзакцию в процедуре Найти похожие ветки
← →
DelphiLexx © (2005-11-03 15:04) [0]Есть хранимая процедура, которая вставляет записи по определенному условию. Но записи не вставляются в таблицу нужно как-то потдвердить транзакцию. Как это сделать?
CREATE PROCEDURE UPD_RGRSN_COEFSNT (
RAWGROUPID INTEGER,
QLT_ID INTEGER,
K1 DOUBLE PRECISION,
K2 DOUBLE PRECISION)
AS
BEGIN
IF (NOT EXISTS (SELECT rgc.RAW_GROUP_ID, rgc.QLT_ID
FROM rgrsn_coeffsnt rgc
WHERE rgc.raw_group_id =:rawgroupid AND
rgc.qlt_id =:qlt_id)) THEN BEGIN
INSERT INTO rgrsn_coeffsnt
(RAW_GROUP_ID, QLT_ID, K1, K2)
VALUES (:rawgroupid, :qlt_id, :K1, :K2);
END
ELSE BEGIN
UPDATE RGRSN_COEFFSNT
SET
K1 =:K1,
K2 =:K2
WHERE RAW_GROUP_ID =:RAWGROUPID AND
QLT_ID =:QLT_ID;
END
suspend;
END
← →
Johnmen © (2005-11-03 15:06) [1]Никак.
Управление тр-ми прерогатива клиента.
← →
DelphiLexx © (2005-11-03 15:07) [2]
> Никак.
> Управление тр-ми прерогатива клиента.
Т.е. хотитете сказать что вставить новую запись через процедуру нельзя.
← →
Johnmen © (2005-11-03 15:11) [3]Можно. А причём тут транзакция?
← →
Sergey_Masloff (2005-11-03 15:17) [4]Johnmen © (03.11.05 15:06) [1]
>Никак.
>Управление тр-ми прерогатива клиента.
В ИнтерБейсе ;-)
← →
Sergey_Masloff (2005-11-03 15:18) [5]Тьфу блин суспенд не увидел. А то непонятно было что это за сервак - мож оракл. Там хоть обподтверждайся ;-)
← →
Johnmen © (2005-11-03 15:23) [6]>Sergey_Masloff
>В ИнтерБейсе ;-)
>Sergey_Masloff (03.11.05 15:18) [5]
>Тьфу блин суспенд не увидел.
:)
← →
Desdechado © (2005-11-03 15:57) [7]клиент - начало транзакции, вызов процедуры
процедура - запись данных (а нахрена SUSPEND, если данных не возвращает? А! Чтоб Sergey_Masloff, что это FB :))
клиент - подтверждение или откат транзакции
← →
Val © (2005-11-03 16:05) [8]>[5] Sergey_Masloff (03.11.05 15:18)
в оракле не надо ставить двоеточие перед параметром хп :)
← →
evvcom © (2005-11-03 16:14) [9]
> в оракле не надо ставить двоеточие перед параметром хп
и скорее увидишь CREATE OR REPLACE PROCEDURE, и EXISTS работает только в теле SQL-запроса, и ... :)
а в MSSQL параметры на @ начинаются,
а если бы не [7], я бы тоже не знал, что это все-таки FB
Камень в аффтора: лень галочку поставить?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c