Új hozzászólás Aktív témák
-
btotyi
tag
Nem igazán értem mért akarod a visszatérési értéket kezelni. Ha az insert sikeresen lefut akkor úgyis a következő sorra (update) lép. Ha nem (pl kulcs megsértés vagy null érték not null-os mezőbe) kivétel keletkezik akkor pedig rollback így az insertben felvitt rekordo(ka)t eldobja.
Ha szüksége van az insert utáni értékre pld. a kapott id-t tovább kell vinni, akkor vagy tárolt eljárás vagy generator/sequence használata javaslott, természetesen egy tranzakció belül.
-
btotyi
tag
A ps1.execute csak akkor add vissza true-t ha a visszatérési objektum resultset. Mivel az insert nem azt ad vissza igy persze, hogy false.
Setterek: A preparedstatement leküldi az SQL-t a szervernek előkészítésre. Az lefordítja, felkészül. A setterek beállítják a paramétereket, az execute pedig végrehajtja. A korábban említett előnyök mellett nagy hasznát veheted kötegelt adattöltésnél. Ilyenkor query egyszer előkészít, sokszor végrehajt, nagyon gyorsan.
Erre szolgál a tranzakció.
try {
// Disable auto commit
connection.setAutoCommit(false);
// Do SQL updates...
// Commit updates
connection.commit();
} catch (SQLException e) {
// Rollback update
connection.rollback();
} -
btotyi
tag
A getInt-nél mi a kivétel:
Én így szoktam
ResultSet ers = plm.executeQuery();
while (ers.next()) {
V_Elem lm = new V_Elem();
lm.setId(ers.getLong("ID"));
}Egy elemnél pedig simán
if (rs.next()) {
}Használd a SET SCHEMA=WHUSER utasítást. Vagy tedd az adataidat az APP sémába (Az a Derby alapértelmezett sémája).
A Insert/Update queryknél használj parametrizált queryt. Átláthatóbb, véd az SQL injekcion ellen.
pld.
PreparedStatement ps = conn.prepareStatement("update akarmi set nev=? where id=?");
ps.setString(1,"Az új név");
ps.setLong(2, 12); // az adott ID
ps.execute();
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Eladó PlayStation 5 Slim 825GB
- Fanatec Clubsport V3 pedál + Brake performance kit + Damper kit
- ASUS VIVOBOOK S14 FLIP - 14"WUXGA Érintő - Ryzen 5 5600H - 16GB - 512GB - Win11 - MAGYAR - Garancia
- HIBÁS - Alienware 17 R5 i9-8950HK GTX1080OC 8GB
- Asztali PC , i7 12700KF , RTX 3080 , 32GB DDR5 , 1TB NVME
- HP Elite x2 1012 G1,12",FHD+ ,m5-6Y54,8GB,256GB,WIN10, LTE
- Bomba ár! Lenovo ThinkPad T480s - i5-8GEN I 8-16GB I 256SSD I 14" FHD I HDMI I Cam I W11 I Gari!
- Telefon felvásárlás!! Xiaomi Redmi Note 13, Xiaomi Redmi Note 13 Pro, Xiaomi Redmi Note 13 Pro+
- GYÖNYÖRŰ iPhone 13 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3338
- Lenovo ThinkPad T14 Gen 5 Intel Ultra 5,16 gb DDR5 5600, On-Site garancia 2027.10---ig4g modem
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


