Avatar billede neess Nybegynder
17. maj 2002 - 13:31 Der er 8 kommentarer og
2 løsninger

db strøste værdi

Jeg ønsker at den skal finde det største tal i kollen FakturaID i tabellen faktura.

    public static  int fakturanr() throws Exception
    {
    Connection con;                      // connection til aktuelle DB
    String dbName="optik";            // navn på aktuelle DB
    String table;
           
            String DBstr      = "jdbc:odbc:" + dbName;
   

            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");                 
              con = DriverManager.getConnection(DBstr); 
   
   
   
   
                       
        int faknr=0;
        String vnavn = "";
        double vpris=0;
       
        table="faktura";
        String sql = "Select * From " + table + "ORDER BY FakturaID asc";       
   
        Statement stmt = con.createStatement();
        ResultSet rs = stmt.executeQuery (sql);
   
        if (rs.next())
            {       
                 
                faknr = rs.getInt("FakturaID");
               
            }
        else
            {
                  faknr=0;
           
            }       
        stmt.close ();
       
       
        return faknr;
    } // end metoden faktranr
Avatar billede Slater Ekspert
17. maj 2002 - 13:32 #1
Kan du ikke bruge "TOP 1" ???
Avatar billede neess Nybegynder
17. maj 2002 - 13:35 #2
hvordan skal sq sætningen så være ?
Avatar billede jakoba Nybegynder
17. maj 2002 - 13:37 #3
hvis du vil have det største faktureaID skal der ordnes i descending orden så er det det allerførste. du kan evt sætte en limit på hvis det er alt hvad du ønsker:
String sql = "Select * From " + table + "ORDER BY FakturaID desc LIMIT 0,1";
Avatar billede tipsen Nybegynder
17. maj 2002 - 13:46 #4
Kan man ikke nøjes med noget i retning af:

SELECT MAX(FakturaID) From Table ?
Avatar billede neess Nybegynder
17. maj 2002 - 13:47 #5
jakoba kan ikke få din sætning til at virke
Avatar billede neess Nybegynder
17. maj 2002 - 13:50 #6
SELECT MAX(FakturaID) From Table
kan jeg heller ikke få til at virke
Avatar billede disky Nybegynder
17. maj 2002 - 13:54 #7
Det er en meget dum ide at oprette og lukke en database connection hver gang du skal snakke med basen, din performance bliver som på en C64'er

Er det access du bruger som bare ?

Den følger ikke SQL standarden, så det kan være derfor det ikke virker.
Avatar billede neess Nybegynder
17. maj 2002 - 13:55 #8
ja det er acces
Avatar billede neess Nybegynder
17. maj 2002 - 14:10 #9
fandt en løsning:
String sql = "Select DISTINCTROW MAX(faktura.FakturaID) as [maks] from faktura;";
Avatar billede tipsen Nybegynder
17. maj 2002 - 14:13 #10
så var MAX jo slet ikke så dum ;-)
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