On 10/21/13 11:53 AM, Bob M wrote:
Hi

I have the following code which retrieves the 'oldest' record and prints out
some data

rs = s.executeQuery("SELECT from tablename ORDER BY Date ASC, Time, ASC
FETCH FIRST ROW ONLY");
rs.next();
String Date = rs.getString("Date");
String Date = rs.getString("Time");
myConsole.getOut().println("Date/Time " + Date ", " + Time);

Now I wish to delete this record and the code is..........

rs = s.executeQuery("DELETE from tablename WHERE ????");

What is the ?????

Bob M



--
View this message in context: 
http://apache-database.10148.n7.nabble.com/Retrieving-the-oldest-record-and-deleting-it-tp134915.html
Sent from the Apache Derby Users mailing list archive at Nabble.com.

Hi Bob,

The following program may shed some light on how to perform positioned deletes.

Hope this helps,
-Rick

------------------

import java.sql.*;

public class w
{
    public  static  void    main( String... args ) throws Exception
    {
Connection conn = DriverManager.getConnection( "jdbc:derby:memory:db;create=true" );

conn.prepareStatement( "create table t( a int generated always as identity, b int )" ).execute(); conn.prepareStatement( "insert into t( b ) values ( 10 ), ( 20 ), ( 30 )" ).execute();

        conn.setAutoCommit( false );

        Statement   cursorStatement = conn.createStatement();
        cursorStatement.setCursorName( "MYCURSOR" );
ResultSet rs = cursorStatement.executeQuery( "select * from t where b = 20 for update" );
        rs.next();

conn.prepareStatement( "delete from t where current of MYCURSOR" ).executeUpdate();
    }

}

Reply via email to