etse Skrevet 26. juni 2012 Skrevet 26. juni 2012 (endret) Jeg holder på å lage en java-applikasjon som er knyttet opp mot en MySQL-database, hvor jeg bruker prepared-statements. Jeg har en spørring som er som følger: con.prepareStatement("INSERT into table VALUES (?,?,?) ON DUPLICATE KEY UPDATE column=?") Her vil alltid være den ene verdien i "VALUES" være den samme som i UPDATE. Slik det er satt opp over så må jeg sette inn variabelen 2 ganger før jeg kjører spørringen, 1 gang for hvert av de 2 feltene. Er det noen måte å si ifra til preparedStatements at 3 og 4 spørsmålstegn skal byttes ut med samme verdi? Endret 26. juni 2012 av etse
tomsi42 Skrevet 26. juni 2012 Skrevet 26. juni 2012 Ut i fra JDBC dokumentasjonen, så er det ingen annen måte. Så du må ha code ala dette: statement.setInt(3, score); statement.setInt(4, score);
etse Skrevet 26. juni 2012 Forfatter Skrevet 26. juni 2012 var akkurat det jeg prøvde å unngå, da jeg syntes det ble stygg og unødvendig kode. Synd, men sånn er det noen ganger.
tomsi42 Skrevet 26. juni 2012 Skrevet 26. juni 2012 Er også tilhenger av ren kode; men synes ikke det er for galt. Men dette er som sagt en mangel i JDBC. Fant en artikkel der en utvikler hadde laget en klasse som løser dette.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå