- Huawei Watch GT 5 Pro - egészség + stílus
- iPhone topik
- Apple iPhone 17 - alap
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- Netfone
- Milyen okostelefont vegyek?
- Mobil flották
- Samsung Galaxy S25 - végre van kicsi!
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
Új hozzászólás Aktív témák
-
td
senior tag
Na megvan a gond. Idézőjelbe kell tenni a mezőneveket is, de oda már nem kell a user neve. Ez preparedStatement-re is igaz.
Viszont újabb probléma lépett fel:
PreparedStatement ps1 = conn.prepareStatement("INSERT INTO \"WHUSER\".\"Orders\" VALUES (?, ?, ?, ?, 0, 0, ?)");
ps1.setString(1, articleID);
ps1.setInt(2, quantity);
ps1.setString(3, customerID);
ps1.setLong(4, totalcost);
ps1.setLong(5, trackID);
if (ps1.execute()) {
...Megfogadván tanácsodat, alkalmaztam az előkészített lekérdezéseket (tényleg, miket csinálnak a háttérben a setterek?), de az if igaz ága valamiért nem fut le. Több ilyen lekérdezésnél is rendben van, de ennél az egynél valami nem tetszik neki. A furcsa viszont az, hogy az INSERT berakja a sort, tehát az execute()-nak nem kéne hamisat visszaadnia...
Ez az if azért fontos, mert az INSERT sikerétől függően kell update-elni is. setLong()-gal BIGINT mezőket állítok be, a többi varchar és integer. -
td
senior tag
Az exception ez:
org.apache.derby.client.am.SqlException: Invalid operation to read at current cursor position.
Ez akkor van, amikor egy sima SELECT * FROM tábla jellegű lekérdezést csinálok. Az rs.getFetchSize() is nullát ad vissza. Viszont ha kiadok előtte egy rs.next()-et, akkor már nem nulla, és kivétel sem keletkezik. És rendesen le is lehet kérni a mezőértékeket, persze ezeket az első sorból adja.
A SET SCHEMA nem működött sajnos. Az APP-be hogyan tudom betenni? A jobb klikk/Properties... lapon nem lehet átállítani a Schema sort, és amikor a táblát létrehoztam, akkor is csak a WHUSER volt kiválasztható (legalábbis az Owner listából).
Ezt próbáltam amúgy:
stmt.execute("SET SCHEMA=WHUSER");
ResultSet rs = stmt.executeQuery("SELECT * FROM \"WHUSER\".\"Stock\" WHERE ArticleID='" + articleID + "'");És ugyanaz lett a kivétel, mint máskor is:
org.apache.derby.client.am.SqlException: Column 'ARTICLEID' is either not in any table in the FROM list or appears within a join specification and is outside the scope of the join specification or appears in a HAVING clause and is not in the GROUP BY list. If this is a CREATE or ALTER TABLE statement then 'ARTICLEID' is not a column in the target table.Csináltam úgy is, hogy a WHUSER-t '-ok közé tettem, de semmi... (kivétel amúgy arra nem volt)
A másik ötletet (parametrizált query) köszi, majd még kipróbálom azt is. Bár most nem az injection a legnagyobb gondom.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Asus ROG Zephyrus G15 - 15.6" 4K 120Hz - Ryzen 7 6800HS - 24GB - 512GB - RTX 3060 - 2 hó garancia -
- Samsung Galaxy Z Fold 7 512gb makulátlan állapotban dobozában
- Apple iPad Mini 6 Purple 64GB Wi-Fi, Apple Pencil 2nd gen, kitámasztós tokkal
- Intel i5 13th 13600k processzor ELADÓ!
- AMD Ryzen 5 5600X Wraith Stealth dobozos - Aqua garancia 2026.03.07-ig (AM4)
- Bomba ár! Dell Latitude E6320 - i5-2GEN I 4GB I 250GB I DVD I 13,3" HD I Cam I W10 I Garancia!
- OPCIONÁLIS: 2 részletben is elviheted Razer Naga V2 Pro Gamer egér (RZ01-0440100)
- HIBÁTLAN iPhone 12 Pro Max 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3299,100% Akkumulátor
- Samsung Galaxy S25 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Akció! Újra Gamer EGEREK! Glorious , Endgamer XM1R , Nibio
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest