Olen tehnyt javalla graafisen ohjelman, joka hakee ja päivittää Mysql tietokannassa olevia tietoja.
Tietokanta sisältää useita eri projekteja ja ongelmani on se, että pitäisi saada päivitykset kohdistumaan juuri tiettyy projektiin sen numeronmukaan(proj_id).
Ohjelmassani on teksti kenttä johon käyttäjä antaa projektinnumeron(jTextField13) ja lisäksi kenttä jonka tietojen pitäisi mennä tietokantaan(kentta4).
Alla oleva sql lause toimii mutta se ei kohdistu käyttäjän valitsemaan tietokantaan.
String proj = jTextField13.getText();
String paivitus=null;
paivitus = kentta4.getText();
String sqlLause = "insert into hours (inall) values(" paivitus ")";
//eli kyseinen koodi lähettää tiedot mitkä se saa kentta4:stä tietokantaan, mutta pitäisi myös saada ympättyä jtextfield13:sta saatu numero mukaan niin päivitys kohdistuisi oikeaan tietokantaan.
Olen esim yrittänyt seuraavaa lausetta tuloksetta:
String sqlLause = "insert into hours (inall) values(" paivitus ") where proj_id = proj";
Joku tuossa lauseessa mättää, mutta mikä??
Olisin todella kiitollinen avusta.
ps.kerrankin näin päin, että itse etsii apua:)
Tietokanta sisältää useita eri projekteja ja ongelmani on se, että pitäisi saada päivitykset kohdistumaan juuri tiettyy projektiin sen numeronmukaan(proj_id).
Ohjelmassani on teksti kenttä johon käyttäjä antaa projektinnumeron(jTextField13) ja lisäksi kenttä jonka tietojen pitäisi mennä tietokantaan(kentta4).
Alla oleva sql lause toimii mutta se ei kohdistu käyttäjän valitsemaan tietokantaan.
String proj = jTextField13.getText();
String paivitus=null;
paivitus = kentta4.getText();
String sqlLause = "insert into hours (inall) values(" paivitus ")";
//eli kyseinen koodi lähettää tiedot mitkä se saa kentta4:stä tietokantaan, mutta pitäisi myös saada ympättyä jtextfield13:sta saatu numero mukaan niin päivitys kohdistuisi oikeaan tietokantaan.
Olen esim yrittänyt seuraavaa lausetta tuloksetta:
String sqlLause = "insert into hours (inall) values(" paivitus ") where proj_id = proj";
Joku tuossa lauseessa mättää, mutta mikä??
Olisin todella kiitollinen avusta.
ps.kerrankin näin päin, että itse etsii apua:)
Vastaukset 5
Vanhimmat
lainausmerkit.
where proj_id = \'proj\'";
että se vertaa sitä stringinä
hmm ei se oikein tuo pirun vastaus toiminut. Muita ehdotuksia?
kertoisit mikä se virhe on. Onko se SQL-birhe vai kääntäjä huutaa jotain muuta?
Esimerkiksi sulla on siellä sisäkkäisiä lainausmerkkejä stringissä ja siitä se ainakin huutaa.
String testi = " jee tämä ei todellakaan toimi ("jee")";
Toi on väärin ja seuraava oikein:
String testi = "jee tämä saattais (\"jo\") mennä läpi";
Eli jos haluaa stringin siällä näyttää lainausmerkkejä, niin ne pitää kertoa javalle näin \"
Tein lauseen ohjeidesi mukaan:
String sqlLause = "insert into hours (inall) "
"values(" paivitus ")where proj_id = \'proj\'";
Virhe on se perinteinen. "You have an error in your SQL syntax.
Olen tosi kiitollinen kun yrität auttaa minua.
Tällä lauseella sain toimimaan KIITOS piru, kun johdattelit minua oikealle tielle.
String sqlLause= "update hours set inall = '" paivitus "'"
"where proj_id = " proj;