Row_Number () in MySql result value Double, but in IBM Data Studio result Int

I want the result value in java to be equal to Int in IBM Data Studio, but in my case java generates a value in double, I don’t know why ?, Please help fix it!

This is my java code to create a number in a table

code vector

private void polDatToTab(ResultSet rs, JTable table) throws SQLException{
        String[] colHead = new String[] {"No","NIK","Nama"};
        DefaultTableModel tm = new DefaultTableModel();
        ResultSetMetaData rsd = rs.getMetaData();

        Vector<String> nameCol = new Vector<String>();
        int kolCount = rsd.getColumnCount();
        for(int i=0;i<colHead.length;i++){
            nameCol.add(colHead[i]);
        }

        Vector<Vector<Object>> data = new Vector<Vector<Object>>();
        while(rs.next()){
        Vector<Object> vec = new Vector<Object>();
        for(int j=1;j<=kolCount;j++){
            vec.add(rs.getObject(j));
        }
           data.add(vec);
        }
        tm.setDataVector(data, nameCol);
        table.setModel(tm);
    }

This is my java code for displaying a table in Gui

enter image description here

private void srcEmp(){
        String srcE = "SELECT (@ROW_NUMBER:=@ROW_NUMBER + 1) AS  No_Urut,NIK,NAMA FROM PAYROLL.KARYAWAN,"
                + "(SELECT @ROW_NUMBER:=0) AS T WHERE NAMA LIKE '%"+srcRes+"%'";
        DbConnect co = new DbConnect();
        co.connectDB();

        try {
            st = co.connection.createStatement();
            ResultSet ul = st.executeQuery(srcE);
            polDatToTab(ul, tabResSrc);
        } catch (SQLException ex) {
            Logger.getLogger(ResSrc.class.getName()).log(Level.SEVERE, null, ex);
        }


    }

This my sql code in IBM Data Studio generates true value in int

    SELECT (@ROW_NUMBER:=@ROW_NUMBER + 1) AS No_Urut,NIK,NAMA 
FROM PAYROLL.KARYAWAN,(SELECT @ROW_NUMBER:=0) AS T 
WHERE NAMA LIKE '%"+srcRes+"%'

This is my result in Java Gui:

enter image description here

and this is my result in IBM Data Studio

enter image description here

+4
source share
1 answer

polDatToTab , , . -

String[] colHead = new String[] {"No","NIK","Nama"};

, , int. ,

    vec.add(rs.getInt(1));
    for(int j=2; j<=kolCount; j++){
        vec.add(rs.getObject(j));            
    }

+1

Source: https://habr.com/ru/post/1656157/


All Articles