Problem v INTERBASE

5 отговора 94 прегледа
#1

Problem v INTERBASE

Imam problem s izvikvaneto na procedura v interbase i po to4no 4eteneto na rezultata:t.e.
(ima se vpredvid stored proceduri,TEMP_TABLE e predvaritelno suzdadena)
--------------------------
PROCEDURE 1
...
DELETE FROM TEMP_TABLE;
...
INSERT INTO TEMP_TABLE(..алабала)
...
--------------------------
Procedure 2
...
EXECUTE PROCEDURE 1;
SELECT COUNT(ID_TMPTBL) FROM TEMP_TABLE INTO V_RESULT WHERE bla-bla;
...
IF (V_RESULT>0) THEN edi_kvo_si....:))
----------------------------
PROBLEM !!!! V_RUSULT e VINAGI=0 (a ima zapisi v TEMP_TABLE otgovariashti na uslovieto "bla-bla")!!! zashtoto resultatite ot [PROCEDURE 1]
ne sa se COMMIT-vali sled izvikvaneto i ot [PROCEDURE 2]

IMA LI RESHENIE TOZI PROBLEM ????
gledah SET TRANSACTION v helpa... no iavno ima oshte mnogo hliab da iam...ne mojah da se oprava...sam.. :)))
predvaritelno 10x ....


...


Отговор
в отговор на Efex #2

Re: Problem v INTERBASE

Слагаш ли двете точки пред V_COUNT в SELECT-a ?

SELECT COUNT(*) FROM Table INTO :V_COUNT ?

Отговор
в отговор на Dark_Dirk #3

Re: Problem v INTERBASE

опа V_COUNT -> V_RESULT

Отговор
в отговор на Efex #4

Re: Problem v INTERBASE

Нещо не ми стана ясно - как ти се викат двете процедури? Първата вика втората или ти си ги викаш двете поотделно от някаква програмка? В една транзакция ли работят двете? Дай сорсовете им и малко повече информация за това как ги викаш, защото така не мога да ти отговоря нищо конкретно

Отговор
в отговор на andrew_nikoloff #5

Re: Problem v INTERBASE

Благодаря на всички.. проблема е решен... в.ж. клуб "Бази данни"


Отговор
в отговор на Efex #6

Един съвет...

Следващия път поствай само в един клуб - ще е по-приятно за тези които четат и двата - повярвай повече са от колкото предполагаш.
Прави кросс пост - само ако до няколко дена не получиш никакъв отговор.

---
Е т'ва е живот!
Отговор