0

When I click on Button which fetch records from the database it works fine

public void fetchrecords()  throws SQLException
    {
    Statement stmt = null;
        String query = "select * from Employer where Fileno=1";
        try {
            stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
             rs = stmt.executeQuery(query);
            while (rs.next())
            {
                firstNameTextField.setText(rs.getString(2));
                lastNameTextField.setText(rs.getString(3));
                addressTextField.setText(rs.getString(4));
                //and more records.
                }
                }   
    }

But when I click on Next button shows me this error

com.microsoft.sqlserver.jdbc.SQLServerException: The concurrency is not supported.
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.<init>(SQLServerStatement.java:464)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.createStatement(SQLServerConnection.java:2157)
    at Miglayout.nextrecord(Miglayout.java:439)
    at Miglayout.actionPerformed(Miglayout.java:528)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.Component.processMouseEvent(Component.java:6505)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
    at java.awt.Component.processEvent(Component.java:6270)
    at java.awt.Container.processEvent(Container.java:2229)
    at java.awt.Component.dispatchEventImpl(Component.java:4861)
    at java.awt.Container.dispatchEventImpl(Container.java:2287)
    at java.awt.Component.dispatchEvent(Component.java:4687)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
    at java.awt.Container.dispatchEventImpl(Container.java:2273)
    at java.awt.Window.dispatchEventImpl(Window.java:2719)
    at java.awt.Component.dispatchEvent(Component.java:4687)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:688)
    at java.awt.EventQueue$3.run(EventQueue.java:686)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
    at java.awt.EventQueue$4.run(EventQueue.java:702)
    at java.awt.EventQueue$4.run(EventQueue.java:700)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

and here is the code on that Button next

public void nextrecord()
    {
        Statement stmt = null;
        String query = "select * from Employer";
        try {
            stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.FETCH_FORWARD);
             rs = stmt.executeQuery(query);

        if (rs.first())     
        {
            rs.next();
            firstNameTextField.setText(rs.getString(2));
            lastNameTextField.setText(rs.getString(3));
            addressTextField.setText(rs.getString(4));

            }
            }

It does not take me to the next record?

Edited by chdboy

2
Contributors
3
Replies
37
Views
3 Years
Discussion Span
Last Post by chdboy
0

Hi,
Which driver are you using? Microsoft old version will not support sensitive and updatable resultset. Check the following link for more details
Click Here
Regards
Bhanu Teja Motupalli

Edited by bhanu1607

0

Comming back to the similar problem with ResultSet
I'm not able to move forward with the ResultSet with this code on "next Button"

Statement stmt = null;
        String query = "select * from Employer";
        try {

            stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

             rs = stmt.executeQuery(query);

             if(rs.first());
             {
             while(rs.next())
             {

            firstNameTextField.setText(rs.getString(2));
            lastNameTextField.setText(rs.getString(3));
            addressTextField.setText(rs.getString(4));


             }

    }

        }
        catch (SQLException e )
        {
            e.printStackTrace();
        }

        }

It takes me to the Last record in the ResultSet ..misses all the other records.
I want them to display one by one.
When I press next button ....there is first row of data present in the JTextFields ,I want to go to the next record.

This question has already been answered. Start a new discussion instead.
Be sure to adhere to our posting rules.