Kako provjeriti postojanje sloga na drugi način


U proceduri mp_valuta_exists je bio ovaj dio koda:


SELECT    @out_ima    = COUNT(VALUTA)
 FROM    MP_VALUTA
 WHERE    VALUTA    = @valuta
SET @err = @err + @@ERROR

Dva načina za koji kažu da su bolji od ovo gore navedenog su:

1. Koristi se EXISTS za provjeru


IF EXISTS (SELECT VALUTA FROM MP_VALUTA WHERE VALUTA = @valuta)
 BEGIN
 SET @err = @err + @@ERROR
 SET @out_ima = 1
 END

2. Koristi se varijabla koja vraća broj zahvaćenih slogova, @@ROWCOUNT. Pomoćna varijabla @pom se koristi za prihvat podatka šifre varijable.


SELECT    @pom = VALUTA
 FROM    MP_VALUTA
 WHERE    VALUTA    = @valuta
SET @err = @err + @@ERROR
SET @out_ima = @@ROWCOUNT

Kako se radi o provjeri primarnog ključa, uvijek će broj vraćenih slogova biti 0 ili 1.

  1. No comments yet.
(will not be published)