shh
shh

Reputation: 1

SQL statement to execute cannot be empty or null

public boolean commitDatabase(Connection con) throws Exception{
        try{
            con.commit();
            con.setAutoCommit(true);
            String sqlstmt1 = super.getSql("enable_privUserTrigger");
            pstmt = con.prepareStatement(sqlstmt1);
            pstmt.executeUpdate();
            String sqlstmt2 = super.getSql("update_Status");
            pstmt = con.prepareStatement(sqlstmt2);
            pstmt.setString(1, "GREEN");
            pstmt.executeUpdate();
        }catch (SQLException e) {
            System.out.println("commitDatabase : "+e.getMessage());
            con.rollback();
            con.setAutoCommit(true);
            throw e;
        }finally{
            if(pstmt!=null) pstmt.close();
        }
        return true;
    }

Please tell where the error is!!SQL statement to execute cannot be empty or null.. I am at midst of a dilemma...Help please

Upvotes: 0

Views: 12513

Answers (3)

krisp
krisp

Reputation: 131

Print to the console actual SQLs that you are trying to execute. One of those probably is empty.

Add System.out.println() like this and see values of sqlstmt1 and sqlstmt2:

String sqlstmt1 = super.getSql("enable_privUserTrigger");
System.out.println("sqlstmt1 : "+sqlstmt1);
[...]
String sqlstmt2 = super.getSql("update_Status");
System.out.println("sqlstmt2 : "+sqlstmt2);

Upvotes: 1

l.Charles.Desbonne
l.Charles.Desbonne

Reputation: 11

Have you initialized your PreparedStatement object properly? I think you need to do something like:

PreparedStatement pstmt = con.prepareStament(sqlstmt1)

Upvotes: 0

Arun pandian M
Arun pandian M

Reputation: 882

super.getSql("enable_privUserTrigger");

or

super.getSql("update_Status");

returns null; thats the error

provide more info please

Upvotes: 1

Related Questions