Delphi - Függvények felüldefiniálása és törlése

Transact SQL 17. rész

forráskód letöltése
Az előző részben megvizsgáltuk, hogy hogyan tudunk saját függvényeket létrehozni. Ebben a részben azt nézzük meg, hogy hogyan tudunk egy már létező függvényt módosítani, illetve törölni.
01.sql
Létrehozzuk a teszt adatbázist.
02.sql
Létrehozunk egy táblát, benne néhány rekorddal.
03.sql
Létrehozunk egy függvényt, hogy legyen mit módosítani. Ez az előző részben elkészített Age függvény lesz, a CREATE FUNCTION utasítás leírása is ott olvasható részletesen.
04.sql
Ez egy SELECT lekérdezés, melynek eredményéből látni fogjuk, hogy a függvény működik-e.
05.sql
Most módosítjuk úgy a függvényt, hogy az életkort kerekítse a tízes helyi-értékre. Ez azt jelenti, hogy ha például az eredmény 12 lenne, akkor a visszatérési érték 10 lesz. A módosítást az ALTER FUNCTION utasítással tudjuk elvégezni, amelynek szintaktikája megegyezik a CREATE FUNCTION utasításéval.
ALTER FUNCTION Age (@BirthDate DateTime, @CurrentDate DateTime)  
RETURNS int AS  
BEGIN
  DECLARE @A int;
  SET @A = Round(Abs(DateDiff(Day, @CurrentDate, @BirthDate))/365, -1);
  RETURN (@A)
END
A kerekítéshez a Round függvényt használjuk. Ennek első paramétere a kerekítendő szám, míg a második paraméter egy negatív, vagy pozitív érték, amely a kerekítés módját adja meg. Negatív szám esetén az egész rész kerekítése történik meg, míg pozitív értéknél a törtrészé.
06.sql
Ez egy újabb lekérdezés, amelyből láthatjuk, hogy a függvény visszatérési értéke hogyan változott meg az előzőhöz képest.
07.sql
Egy feleslegesség vált függvényt a DROP FUNCTION utasítással törölhetünk. Az utasítás után meg kell adni a függvény nevét:
DROP FUNCTION Age;
08.sql
Töröljük a teszt adatbázist.

Transact SQL cikksorozat