Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: MárkaLánc
- Meggyi001: Áram nélkül....méltóság nélkül.....
- Luck Dragon: Óraátállítás
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- MasterDeeJay: Intel Optane M10: mire lehet használni?
Ú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
- Zotac Gaming RTX 5070 // Felbontott, új // SZÁMLA // GARANCIA //
- 27% PNY GeForce RTX 5070 EPIC-X RGB OC 12GB GDDR7 192bit (VCG507012TFXXPB1-O) Videokártya
- Telefon felvásárlás!! Samsung Galaxy A70/Samsung Galaxy A71/Samsung Galaxy A72
- Microsoft Surface Laptop 5 i5-1245U 16 GB RAM 2256X1504 érintőkijelző Garancia
- Xcover 7 128/6
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
