14. november 2002 - 00:32Der er
20 kommentarer og 1 løsning
Update JAVA
Hejsa Der er mange ponits at hente her, for jeg er virkelig lost. Jeg skal have et objekt ud af min database opdatere det og sætte det ind igen - men hvordan? Jeg har prøver ca. 1000 forskellige ting, men det vil bare ikke som jeg vil. --------------- Oplysninger: - Klassen objekter tilhører hedder "Glider" - Atributter på Glider: - int gliderid, - String glidertype, - boolean gliderstatus, - int gliderseats, - double gliderflighthour
- Forbindelsen til DB oprettes i klassen "DatabaseForbindelse" -------------- Det jeg så skal have lavet er: Man vælger et "gliderid", og skal så kunne opdaterer de andre atributter. Skriv endelig hvis du mangler nogle oplysninger. JEg vil blive lykkelig for noget kode, men en god forklaring på hvordan det skal gøres vil da også hjælpe - TAK!
1) Hvis du er i et J2EE environment kan du bruge en EJB entity bean. Så kan du finde et objekt på primær-nøgle, updatere felter og få objektet skrevet tilbage til databasen. Du skal ikke engang selv skrive koden til at finde objektet og skrive tilbage til databasen. Men det krævet altså lidt af environment.
2) JDO. SOm jeg ikke ved ret meget om.
3) JDBC.
Du laver et statement med SELECT med WHERE, som finde den rigtige record. Så henter du alle felter far recorden over i objektet. Så kan du opdatere de felter du vil opdatere. Og så bruger du en UPDATE med WHERE til at opdatere databasen.
Jeg kan forklare deig mere om entity beans eller om JDBC kald og SELECT/UPDATE SQL statements.
Ahh damn selvfølgelig - men hvis det nu skulle sættes lig med noget man indtastede i en GUI? Skal der så bare stå fx. glidertype = '" + input.getGlidertype() + "'; eller hvad?
Hvis det ikke lykkes, så smid den kode du prøver at få til at virke, så kan vi gi dig hints hvor du skal sætte ind, så lærer du også lidt mere iforhold til hvis vi bare laver det fra bunden...!
Det er i denne linie den mener der er fejl: ------------- stmt.executeUpdate("UPDATE glider SET glidertype='" + glidertypeU + "', gliderstatus='" + gliderstatus +"', gliderseats="+ gliderseats +", gliderflighthours='"+ gliderflighthours +"' WHERE gliderid=" +gidU);
Ja, det var stavefejl... Jeg takker mange gange men vender nok tilbage inden længe med et nyt problem :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.