Hirdetés
- Valami baja van a tápomnak
- E-book olvasók
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Milyen billentyűzetet vegyek?
- Úgy állhat le a 16 GB-os GeForce RTX 5060 Ti gyártása, hogy közben nem áll le
- Milyen TV-t vegyek?
- Milyen monitort vegyek?
- Projektor topic
- Dell notebook topic
- HDD probléma (nem adatmentés)
Új hozzászólás Aktív témák
-
kw3v865
senior tag
Üdv!
Van egy PostgreSQL-ben megírt függvényem (ennek tartalma most szerintem lényegtelen), melynek a teljesítményét kívánom tesztelni. Ez a függvény meg lesz majd hívva folyamatosan egymás után több ezerszer, értelemszerűen változó argumentumokkal. Ennek a teljesítményét szeretném most tesztelni. A lényeg: valahogy szimulálni akarom, hogy a valóságban nagyjából milyen gyorsan fut majd le a folyamat, ha több 1000-szer meghívom egymás után a függvényt.
Ehhez rendelkezésemre áll egy tábla, melyben a benne lévő adatokkal tudnám is tesztelni a függvényt. Tehát a terv az lenne, hogy írok egy függvényt, ami végigmegy egy FOR-ral az összes rekordon, kiszedi a felhasznákalandó értékeket változókba, és minden alkalommal meghívja a függvényemet úgy, hogy argumentumként ezeket a változókat adom meg.Szerintetek jó az elgondolás?
Íme kódom:
CREATE OR REPLACE FUNCTION sqlteszt()RETURNS voidLANGUAGE 'plpgsql'AS $BODY$DECLAREi integer;x double precision;y double precision;datetime timestamp without time zone;BEGINFOR i IN SELECT id FROM probaLOOPSELECT p.x, p.y, p.datetime FROM proba p WHERE p.id=iINTO x, y, weedpercent, datetime;PERFORM masikfuggveny(x,y,datetime,true,false,false,true,false);END LOOP;END;$BODY$;
Nem csinál semmit így, azaz lefut, de semmi hatása nincs (egyébként insert-eket is csinál, de az most lényegtelen). Ha a "masikfuggveny"-t csak simán meghívom tetszőleges bemeneti paraméterekkel, akkor tökéletesen működik.
Ha a PERFORM helyett SELECT-tel hívom meg a "masikfuggveny"-t, akkor ezt a hibaüzenetet kapom (pedig az is void, azaz nincs visszatérési értéke):
ERROR: query has no destination for result data
HINT: If you want to discard the results of a SELECT, use PERFORM instead.Van valami ötletetek mi okozhatja a problémát?
Új hozzászólás Aktív témák
- Apple iPhone 12 Pro Max / 128GB / Kártyafüggetlen / 12Hó garancia
- 152 - Lenovo LOQ (15IRH8) - Intel Core i5-12450H, RTX 4060
- HIBÁTLAN iPhone 12 Pro Max 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, 100% Akkumulátor
- Telenor 5G Indoor WiFi Router (FA7550) + töltő
- Apple Watch Series 7 41mm GPS,Újszerű,Dobozával,12 hónap garanciával
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


