Salve,
ho un problema col settaggio a null di un parametro di un PreparedStatement. So che devo usare il metodo setNull(index,columnType) ma ho problemi a passare il tipo della colonna corrispondente. Mi spiego meglio. Utilizzando getParameterMetaData() della classe PreparedStatement vorrei prelevare il tipo della colonna. Ma mi viene generata l'eccezione: java.sql.SQLException: Parameter metadata not available for the given statement.
Posto il codice che ho scritto:
Codice PHP:
public boolean executeUpdate(String query, Object[] parameters){
int result=0;
try{
PreparedStatement pstmt = conn.prepareStatement(query);
ParameterMetaData tableParamInfo = pstmt.getParameterMetaData();
for(int i=1;i<=parameters.length;i++){
if(parameters[i-1]==null)
pstmt.setNull(i,tableParamInfo.getParameterType(i));
else{
//...
//...altre operazioni
//...
}
}
result=pstmt.executeUpdate();
}catch(Exception ex){
ex.printStackTrace();
}
if(result==0)
return false;
else
return true;
}
Uso MySql 5.0 (connector 5.1.5)
Grazie.