hey leute hab ein kleines projekt das ich zum laufen bringen soll, daten sollen aus einer *.txt datei ausgelesen und in eine mysql datenbank gespeichert werden, jedoch bekomme ich beim ausführen des programms immer die fehlermeldung:" illegal operation on empty result set"
als kleine hilfe hier meine methode in der die fehlermeldung auftritt
kann es vielleicht daran liegen, dass in der datenbank in einer bestimmten tabelle schon etwas drin stehen muss?
m.f.g
als kleine hilfe hier meine methode in der die fehlermeldung auftritt
Java:
public void writeDB(String host, String user, String pswd, String schema, HashMap<String,DICOMValues> optMap) throws Exception{
MySQLTranslator mySQLT = new MySQLTranslator();
mySQLT.connect(host, user, pswd, schema); //Verbindung mit dem MySQL-Server
ResultSet rsID = null; //Initialisierung des ResultSets
ResultSet rsIsEmpty = null;
int rsStudy = 0;
System.out.println("Initialisierung Resultset");
Set<String> keySet = optMap.keySet();
for (String act : keySet){
String key = optMap.get(act).getDate() + optMap.get(act).getMod() + optMap.get(act).getDept();
String modId = "";
String uid = "";
String isEmptyQuery = "SELECT * FROM study where uid = '" + key + "'";
String modQuery = "SELECT id FROM modality where attribute = '" + optMap.get(act).getMod() + "' and department_attribute = '"+ optMap.get(act).getDept() +"'";
rsIsEmpty = mySQLT.writeSELECTQuery(isEmptyQuery);
if (rsIsEmpty.next()){
uid = rsIsEmpty.getString("uid");
}else{
uid = "";
}
if(uid.equals("")){
rsID = mySQLT.writeSELECTQuery(modQuery);
rsID.next();
modId = rsID.getString("id");
String queryStudy = "insert into study (uid, modality_id, numstudy, numpic, datestudy) values ('" + key + "','" + modId + "', " + optMap.get(act).getNumstud() + ", " + optMap.get(act).getNumpic() + ", " + optMap.get(act).getDate() + ")";
rsStudy = mySQLT.writeINSERTQuery(queryStudy);
} else if(uid.equals(key)){
rsID = mySQLT.writeSELECTQuery(modQuery);
rsID.next();
modId = rsID.getString("id");
String queryStudy = "update study set modality_id='" + modId + "', numstudy="+optMap.get(act).getNumstud()+", numpic=" + optMap.get(act).getNumpic() + " where uid='" + key + "'";
rsStudy = mySQLT.writeINSERTQuery(queryStudy);
}
}
mySQLT.deConnect();
}
kann es vielleicht daran liegen, dass in der datenbank in einer bestimmten tabelle schon etwas drin stehen muss?
m.f.g