Avatar billede christian_catu Nybegynder
23. maj 2002 - 12:07 Der er 2 kommentarer og
1 løsning

Udførelse af sql kommando i java

Hejsa
Jeg skal have oprettet en kunde fra et javaprogram. Kunden skal tilføjes en sql database jeg har lavet i interbase.
Kommandoen ser således ud:

import java.sql.*;
import java.net.URL;
import java.util.*;

public class DbKunde2
{
    private ResultSet results;
    private ResultSetMetaData rsmd;
    private DatabaseMetaData dma;
    private Connection con;
   
    public DbKunde2()
    {
        con = DbAdgang.getDBcon();
    }
    public int insert(Object e)
    {
        Kunde k = (Kunde) e;
        int rc=-1;
      String query="INSERT INTO Kunde VALUES("+
                                      k.getFornavn()+"',"+
                                    k.getEfternavn()+",'"+               
                                    k.getKundeNummer()+")";//+"'," + null    + ")";

      try{
              Statement stmt = con.createStatement();
              rc = stmt.executeUpdate(query);
       
          }   
          catch(Exception ex){
              System.out.println("Insert exception i db: "+ex);
          }
      return(rc);
    }
   
    public int delete(Object e)
    {
        Kunde k = (Kunde) e;
        int rc=-1;
      String query="DELETE FROM Kunde WHERE Kundenummer="+ k.getKundeNummer();
      try
      {
              Statement stmt = con.createStatement();
              rc = stmt.executeUpdate(query);
      }   
      catch(Exception ex){
              System.out.println("Delete exception i db: "+ex);
      }
        return(rc);
    }
   
   
}

Jeg kører så en insert(Object) fra en controller, men jeg får flg fejl, når jeg vil oprette Erik Jensen 98229988:


Insert exception i db: java.sql.SQLException: [INTERSOLV][ODBC InterBase driver][InterBase]Dynamic SQL Error, SQL error code = -104, Token unknown - line 1, char 29, ',Jensen'
Avatar billede disky Nybegynder
23. maj 2002 - 12:34 #1
du mangler '

ret
String query="INSERT INTO Kunde VALUES("+
                                      k.getFornavn()+"',"+
                                    k.getEfternavn()+",'"+               
                                    k.getKundeNummer()+")";//+"'," + null    + ")";

til
String query="INSERT INTO Kunde VALUES("'+
                                      k.getFornavn()+"','"+
                                    k.getEfternavn()+"','"+               
                                    k.getKundeNummer()+"')";//+"'," + null    + ")";

Forudsat dit kundenummer også er en String, ellers fjern ' rundt om kundenummer
Avatar billede christian_catu Nybegynder
23. maj 2002 - 20:06 #2
disky! Du er en sveske. Jeg er totalt newbie (er ved at anvende det i forb. med en skoleopgave) og jeg har simpelthen kæmpet med det hele dagen.
Avatar billede disky Nybegynder
24. maj 2002 - 00:41 #3
altså nu kan jeg ikke lide svesker, men okay da :-)

Du siger bare til hvis det driller igen.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester