Avatar billede chr.kj Nybegynder
17. december 2007 - 16:19 Der er 7 kommentarer og
1 løsning

Hvorfor kan jeg ikke indsætte felter i min MS Access DB?

Skal have indsat nogle felter til min MS Access DB.

Alle er strenge, pånær lagerAntal og salgspris

Jeg bruger denne kode til at indsætte værdierne osv:

String sqlUdtryk = "INSERT INTO varelager VALUES('" + jTextFieldVarenummer.getText() + "','" + jTextFieldVarenavn.getText() + "','" + jTextFieldBeskrivelse.getText() + "'," + jTextFieldLagerAntal.getText() + "," + jTextFieldSalgspris.getText() + ",'" + jComboBoxLagerPlacering.getSelectedItem() + "')";
        System.out.println(sqlUdtryk);       
        try
        {
            con = DriverManager.getConnection("jdbc:odbc:lagerdb","","");
            stmt = con.createStatement();
            stmt.executeUpdate(sqlUdtryk);
            stmt.close();
            con.close();
        }
        catch(SQLException e)
        {
            System.out.println("SQL fejl : " + e.getCause());
        }

Jeg får så denne fejl ved kørslen og der kommer ikke noget ind i db felterne:

INSERT INTO varelager VALUES('12345','Mus','Trådløs',12,99,'Butik')
SQL fejl : null

Er der nogle der kan se hvorfor?
Avatar billede _carsten Nybegynder
17. december 2007 - 16:23 #1
Hvad siger:  System.out.println("SQL fejl : " + e.getMessage());

Er varenr ikke et numerisk felt?  '12345' skal måske ændres til 12345
Avatar billede _carsten Nybegynder
17. december 2007 - 16:24 #2
eller e.printStackTrace() ??
Avatar billede chr.kj Nybegynder
17. december 2007 - 16:32 #3
Mit varenummer er en streng

System.out.println("SQL fejl : " + e.getMessage()); siger :

SQL fejl : [Microsoft][ODBC Microsoft Access-driver] Datatyperne stemmer ikke overens i kriterieudtrykket.
Avatar billede di8leva Nybegynder
17. december 2007 - 16:41 #4
Hvordan er din table skabt? hvilke felter eksisterer, og med hvilke datatyper?
Avatar billede _carsten Nybegynder
17. december 2007 - 16:44 #5
Så har du problemet her, forsleææige datatyper og hvad med lagerantal - den mangler i din insert
INSERT INTO varelager VALUES('12345','Mus','Trådløs',12,99,'Butik')
Avatar billede _carsten Nybegynder
17. december 2007 - 16:44 #6
forsleææige == forskellige
Avatar billede chr.kj Nybegynder
17. december 2007 - 16:46 #7
Havde sat tabellen i db'en forkert og det er rettet nu og det virker.

Takker carsten for hjælpen... Endnu engang har du reddet min dag :o)

Smid et svar :o)
Avatar billede _carsten Nybegynder
17. december 2007 - 16:49 #8
Svar
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