Avatar billede kobojt Nybegynder
18. februar 2000 - 13:53 Der er 2 kommentarer og
1 løsning

Invalid method declaration

Jeg bliver ved med at få følgende fejlmeddelse:
Invalid method declaration; return type required.
Jeg har prøvet at skifte datatype dog uden held. Hvad er der galt ?

Kobojt

import java.sql.*;
public class DBForb
{
    DBForb()
    {
        dbGem();
    }
    public String dbGem() //String is just an example
    {
        try
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");           
        }
        catch(ClassNotFoundException cnfe)
        {
            System.err.println("JDBC-ODBC driver kunne ikke findes.");
        }       
        if(CardPanel.currentCard == CardPanel.P0)
        {           
                String kunde = CardPanel.tfKundeNr.getText();
            String firma = CardPanel.tfFrmNvn.getText();
            String adr = CardPanel.tfAdr.getText();
            String post = CardPanel.tfPstNr.getText();
            String by = CardPanel.tfByNavn.getText();
            String tlf = CardPanel.tfTlfNr.getText();
            String fax = CardPanel.tfTlfaxNr.getText();
            String kpers = CardPanel.tfKntPers.getText();
            String dtlf = CardPanel.tfDirTlf.getText();
            String email = CardPanel.tfEmail.getText();
            String www = CardPanel.tfwww.getText();
            try
            {
                //opret forbindelse
                Connection con = DriverManager.getConnection("jdbc:odbc:cafTut"); //nyt dbnavn !!!
                Statement stmt = con.createStatement();
                //indsæt data i tabel
                stmt.executeUpdate("INSERT INTO Kunde VALUES (kunde, firma, adr, pc, by, tlf, fax, kpers, dtlf, email, www)");
                String updateString = "UPDATE Kunde WHERE KundeNR LIKE kunde";
                System.out.println("Kunde oprettet(opdateret).");
            }
            catch(SQLException se)
            {
                System.err.println("Kunden blev ikke oprettet.");
                System.exit(2);
            }
        }
        else if(CardPanel.currentCard == CardPanel.P1)
        {               
                String kunde = CardPanel.tfRKundeNr.getText();
            String firma = CardPanel.tfRFrmNvn.getText();
            String modtag = CardPanel.tfModtIni.getText();
            String fejl = CardPanel.taBox1.getText();
            String lev = CardPanel.tfLevTid.getText();
            String afh = CardPanel.tfOenAfh.getText();
            String pc = CardPanel.tfPcSeNr.getText();
            String pcliste = CardPanel.taBox2.getText();
            String uarb = CardPanel.taBox3.getText();
            String matforb = CardPanel.taBox4.getText();
                try
                {
                    //opret forbindelse
                    Connection con = DriverManager.getConnection("jdbc:odbc:cafTut"); //nyt dbnavn !!!
                    Statement stmt = con.createStatement();
                    //indsæt data i tabel
                    stmt.executeUpdate("INSERT INTO Rapport VALUES (modtag, fejl, lev, afh, pc, pcliste, uarb, matforb)");
                    String updateString = "UPDATE Rapport WHERE KundeNR LIKE kunde";
                    System.out.println("Rapport oprettet(opdateret).");
                }
                catch(SQLException se)
                {
                    System.err.println("Rapporten blev ikke oprettet.");
                    System.exit(2);
                }
        }
    }
}
Avatar billede gnarf Nybegynder
18. februar 2000 - 14:37 #1
Du har jo ikke nogen return i din metode. Eller også kan jeg bare ikke se den.

Hvis du erklærer din metode med andet end

public _void_ metodenavn ()

så SKAL du returnere et eller andet i din returværdi.

I dit eksempel skal du altså returnere en eller anden form for String i din metode.

Lille dumt eksempel følger :

public Integer ToPlusTo () {
  return new Integer(2+2);
}

Integer a = this.ToPlusTo();
Avatar billede gnarf Nybegynder
18. februar 2000 - 14:39 #2
void betyder altså at der ikke er nogen returværdi fra metoden. Alt andet end void betyder at der returneres et objekt af typen som står der. I dit eksempel String, i mit eksempel Integer.
Avatar billede kobojt Nybegynder
21. februar 2000 - 13:03 #3
ok så kom jeg videre til næste problem, men lige et spørgsmål til.
Henter jeg værdierne fra String variabler rigtigt ind i sql sætningen ?

Kobojt
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