Hallöchen,
hätte mal wieder ein kurzes Anliegen.
In dieser Klasse zeigt es mir einen Fehler an bei der if-Methode (hier steht die Methode, damit Java die Datenbank mit den Rezepten durch nummerieren )
Dieser Fehler steht beim Code:
oldId.setId(i);
und
oldId.setId(i+1);
--> Cannot invoke setId(int) on the primitive type int
leider weiß ich nicht was der Fehler bedeutet bzw wie ich ihn lösen kann
über eure Hilfe wär ich sehr dankbar
hätte mal wieder ein kurzes Anliegen.
In dieser Klasse zeigt es mir einen Fehler an bei der if-Methode (hier steht die Methode, damit Java die Datenbank mit den Rezepten durch nummerieren )
Dieser Fehler steht beim Code:
oldId.setId(i);
und
oldId.setId(i+1);
--> Cannot invoke setId(int) on the primitive type int
Java:
package MEINKOCHBUCH;
import java.sql.*;
public class Speise {
/**
* @uml.property name="name"
*/
private String name;
/**
* Getter of the property <tt>name</tt>
* @return Returns the name.
* @uml.property name="name"
*/
public String getName() {
return name;
}
/**
* Setter of the property <tt>name</tt>
* @param name The name to set.
* @uml.property name="name"
*/
public void setName(String name) {
this.name = name;
}
/**
* @uml.property name="zutaten"
*/
private String zutaten;
/**
* Getter of the property <tt>zutaten</tt>
* @return Returns the zutaten.
* @uml.property name="zutaten"
*/
public String getZutaten() {
return zutaten;
}
/**
* Setter of the property <tt>zutaten</tt>
* @param zutaten The zutaten to set.
* @uml.property name="zutaten"
*/
public void setZutaten(String zutaten) {
this.zutaten = zutaten;
}
/**
* @uml.property name="preis"
*/
private double preis;
/**
* Getter of the property <tt>preis</tt>
* @return Returns the preis.
* @uml.property name="preis"
*/
public double getPreis() {
return preis;
}
/**
* Setter of the property <tt>preis</tt>
* @param preis The preis to set.
* @uml.property name="preis"
*/
public void setPreis(double preis) {
this.preis = preis;
}
/**
* @uml.property name="schwierigkeitsgrad"
*/
private int schwierigkeitsgrad;
/**
* Getter of the property <tt>schwierigkeitsgrad</tt>
* @return Returns the schwierigkeitsgrad.
* @uml.property name="schwierigkeitsgrad"
*/
public int getSchwierigkeitsgrad() {
return schwierigkeitsgrad;
}
/**
* Setter of the property <tt>schwierigkeitsgrad</tt>
* @param schwierigkeitsgrad The schwierigkeitsgrad to set.
* @uml.property name="schwierigkeitsgrad"
*/
public void setSchwierigkeitsgrad(int schwierigkeitsgrad) {
this.schwierigkeitsgrad = schwierigkeitsgrad;
}
/**
* @uml.property name="gang"
*/
private String gang;
/**
* Getter of the property <tt>gang</tt>
* @return Returns the gang.
* @uml.property name="gang"
*/
public String getGang() {
return gang;
}
/**
* Setter of the property <tt>gang</tt>
* @param gang The gang to set.
* @uml.property name="gang"
*/
public void setGang(String gang) {
this.gang = gang;
}
/**
* @uml.property name="rezept"
*/
private String rezept;
/**
* Getter of the property <tt>rezept</tt>
* @return Returns the rezept.
* @uml.property name="rezept"
*/
public String getRezept() {
return rezept;
}
/**
* Setter of the property <tt>rezept</tt>
* @param rezept The rezept to set.
* @uml.property name="rezept"
*/
public void setRezept(String rezept) {
this.rezept = rezept;
}
//Objekt für die Aufnahme von Abfrageergebnissen
ResultSet objErgebnis = null;
public void erfassen()
{
String mSQL; //Zugriffsobjekt wird erzeugt
DBZugriff objZugriff = new DBZugriff(); //SQL_Befehl zum Einfügen der Artikeldaten wird in einer Variablen abgelegt
mSQL= "INSERT INTO Rezeptverwaltung Rezeptverwaltung.Name="+this.name+", Rezeptverwaltung.Zutaten="+this.zutaten+", Rezeptverwaltung.Preis="+this.preis+", Rezeptverwaltung.Schwierigkeitsgrad="+this.schwierigkeitsgrad+", Rezeptverwaltung.Gang="+this.gang+", Rezeptverewaltung.Rezept="+this.rezept+" WHERE (((Rezeptverwaltung.newId)="+this.oldId+"));";
objZugriff.oeffnen();
objZugriff.aendern(mSQL);
objZugriff.schliessen();
}
//prz zum Ändern von Daten
public void korrigieren()
{
//Variable für die SQL-Anweisung
String mSQL;
//Zugriffsobjekt wird erzeugt
DBZugriff objZugriff = new DBZugriff();
//SQL-Befehl zum Abändern der Artikekdaten wird in einer Variablen abgelegt
mSQL = "UPDATE Rezeptverwaltung SET Rezeptverwaltung.Name="+this.name+", Rezeptverwaltung.Zutaten="+this.zutaten+", Rezeptverwaltung.Preis="+this.preis+", Rezeptverwaltung.Schwierigkeitsgrad="+this.schwierigkeitsgrad+", Rezeptverwaltung.Gang="+this.gang+", Rezeptverwaltung.Rezept="+this.rezept+" WHERE (((Rezeptverwaltung.newId)="+this.oldId+"));";
objZugriff.oeffnen();
objZugriff.aendern(mSQL);
objZugriff.schliessen();
}
//prz um Artikel zu löschen
public void loeschen()
{
//Variable für die SQL-Anweisung
String mSQL;
//Zugriffsobjekt wird erzeugt
DBZugriff objZugriff = new DBZugriff();
//SQL-Befehl zum Löschen der Artikeldaten wird in einer Variablen abgelegt
mSQL= "DELETE FROM Rezeptverwaltung Rezeptverwaltung.Name="+this.name+", Rezeptverwaltung.Zutaten="+this.zutaten+", Rezeptverwaltung.Preis="+this.preis+", Rezeptverwaltung.Schwierigkeitsgrad="+this.schwierigkeitsgrad+", Rezeptverwaltung.Gang="+this.gang+", Rezeptverwaltung.Rezept="+this.rezept+" WHERE (((Rezeptverwaltung.newId)="+this.oldId+"));";
objZugriff.oeffnen();
objZugriff.aendern(mSQL);
objZugriff.schliessen();
}
//hier steht die Methode, damit Java die Datenbank mit den Rezepten durch nummerieren kann
int newId, oldId;
boolean match;
public void setOldId(int i)
{
this.oldId=oldId;
}
public int getNewId()
{
int i=0;
if (oldId==i)
{
match = true;
}
else
{
match = false;
}
if(match==true)
{
oldId.setId(i);
}
if (match==false)
{
oldId.setId(i+1);
i++;
}
else
{
newId=i;
}
{
return newId;
}
}
//prz um Artikel zu suchen
public void suchenSpez()
{
try
{
//Variable für die SQL-Anweisung
String mSQL;
//Zugriffsobjekt wird erzeugt
DBZugriff objZugriff = new DBZugriff();
//SQL-Befehl zum Löschen der Artikeldaten wird in einer Variablen abgelegt
mSQL = "SELECT * FROM Rezeptverwaltung Rezeptverwaltung.Name="+this.name+", Rezeptverwaltung.Zutaten="+this.zutaten+", Rezeptverwaltung.Preis="+this.preis+", Rezeptverwaltung.Schwierigkeitsgrad="+this.schwierigkeitsgrad+", Rezeptverwaltung.Gang="+this.gang+", Rezeptverwaltung.Rezept="+this.rezept+" WHERE (((Rezeptverwaltung.newId)="+this.oldId+"));";
objZugriff.oeffnen();
//Methode zur Ausführung der SQL-Abfrage wird aufgerufen und das Ergebnis der Abfrage in einem Objekt der Klasse ResultSet hinterlegt
objErgebnis = objZugriff.lesen(mSQL);
}
catch (Exception e)
{
System.out.println("Suche fehlgeschlagen!");
}
}
public void suchen()
{
try
{
//Variable für die SQL-Anweisung
String mSQL;
//Zugriffsobjekt wird erzeugt
DBZugriff objZugriff = new DBZugriff();
//SQL-Befehl zum Löschen der Artikeldaten wird in einer Variablen abgelegt
mSQL = "SELECT * FROM Rezeptverwaltung Rezeptverwaltung.Name="+this.name+", Rezeptverwaltung.Zutaten="+this.zutaten+", Rezeptverwaltung.Preis="+this.preis+", Rezeptverwaltung.Schwierigkeitsgrad="+this.schwierigkeitsgrad+", Rezeptverwaltung.Gang="+this.gang+", Rezeptverwaltung.Rezept="+this.rezept+" WHERE (((Rezeptverwaltung.newId)="+this.oldId+"));";
objZugriff.oeffnen();
//Methode zur Ausführung der SQL-Abfrage wird aufgerufen und das Ergebnis der Abfrage in einem Objekt der Klasse ResultSet hinterlegt
objErgebnis = objZugriff.lesen(mSQL);
}
catch (Exception e)
{
System.out.println("Suche fehlgeschlagen!");
}
}
//prz um Datensatz einrem Ergebnisobjekt zuzuweisen
public void zuweisen()
{
try
{
//Zeiger wird auf den nächsten Datensatz im Ergebnisobjekt gerichtet
objErgebnis.next();
//einem Objekt der Fachklasse Artikel werden die entsprechenden Attributswerte des Datensatzes aus der Datenbankabfrage zugewiesen
this.name=objErgebnis.getString("name");
this.zutaten=objErgebnis.getString("zutaten");
this.preis=objErgebnis.getDouble("preis");
this.schwierigkeitsgrad=objErgebnis.getInt("schwierigkeitsgrad");
this.gang=objErgebnis.getString("gang");
this.rezept=objErgebnis.getString("rezept");
}
catch (Exception e)
{
System.out.println("Zuweisung Ergebnisobjekt fehlgeschlagen!");
}
}
/**
* @uml.property name="id"
*/
private String id;
/**
* Getter of the property <tt>id</tt>
* @return Returns the id.
* @uml.property name="id"
*/
public String getId() {
return id;
}
/**
* Setter of the property <tt>id</tt>
* @param id The id to set.
* @uml.property name="id"
*/
public void setId(String id) {
this.id = id;
}
}
leider weiß ich nicht was der Fehler bedeutet bzw wie ich ihn lösen kann
über eure Hilfe wär ich sehr dankbar