String toInt?

ramzymamzy

Mitglied
Hi Leuts,

bekomme hierduch die Anzahl von Angebote und Bestellungen zurück und will jetzt Bestellungen durch Angebote teilen um herauszufinden wieviele angebote zu wievielen Bestellungen geführt haben!

Code:
	public ResultSet retrieveOfferOrderStatus(Connection theConnection){	
		  
		ResultSet rs = null;
		ResultSet sr = null;
	  
		try {  
			// Create a result set containing all data from my_table
			Statement stmt = theConnection.createStatement();
			Statement stm = theConnection.createStatement();
			
			rs = stmt.executeQuery("SELECT COUNT(*) FROM XFLEET_CALC.ORDERS");
			sr = stm.executeQuery("SELECT COUNT(*) FROM XFLEET_CALC.OFFERS");

			  while (sr.next()) {
				String r = sr.getString("COUNT(*)");
				System.out.println("Anzahl der Angebote: " + r);
				//int offer = sr.toInt(String r);

			  }
			// Fetch each row from the result set
			  while (rs.next()) {
				 String s = rs.getString("COUNT(*)");
				 System.out.println("Anzahl der Bestellungen: " + s);
			  } 
	
		}
		  	catch (SQLException e) {
			}
	  return rs;
	}
ahso bisherige ausgabe:
Anzahl der Angebote: 1008
Anzahl der Bestellungen: 449

Kann jemand helfen? Es gibt eine String toInt methode! gehts mit der?
Danke im vorraus!
 
Huhu !

PHP:
String eineZahlAlsString = "1";

int eineZahlAlsInt = Integer.parseInt(eineZahlAlsString);

Gruß Stefan

PS: da kann übrigens `ne NumberFormatException auftreten, welche behandelt werden sollte ..

PPS: hehe hab mir gar nicht den Code angeschaut .. Christians Weg is natürlich noch einfacher ;)
 
Zuletzt bearbeitet:
Wieso liest du String aus:
String r = sr.getString("COUNT(*)");

wenn du int haben willst.

rs bietet dir statt getString() eine getInt() Methode.

int count = sr.getInt("COUNT(*)");
 
Hi,

also ich versteh deine Frage nicht so hunderprozent (da die formulierung für mich etwas seltsam ist).

Also ich würde das so machen (alternative zu obigem Integer.parseInt(String)):

String zahl="123456";
int test=0;
Integer testInt=new Integer(zahl);

test=testInt.intValue();




Gruss

Torsten
 
Zuletzt bearbeitet:
Neenee Christian hat schon recht .. Das Umwandeln ist ein überflüssiger Schritt da ResultSet schon die nötige Abfrage liefert ..
 
Hallo,

Select Count(*) From tabelle
liefert immer eine Zahl zurück, deshalb liesst man den Wert mit der Methode rs.getInt() aus.
 
Hmmmm ja das geht!
wo baue ich jetzt das hier ein:
int verhaeltnis = order/offer

Code:
	public ResultSet retrieveOfferOrderStatus(Connection theConnection){	
		  
		ResultSet rs = null;
		ResultSet sr = null;
	  
		try {  
			// Create a result set containing all data from my_table
			Statement stmt = theConnection.createStatement();
			Statement stm = theConnection.createStatement();
			
			rs = stmt.executeQuery("SELECT COUNT(*) FROM XFLEET_CALC.ORDERS");
			sr = stm.executeQuery("SELECT COUNT(*) FROM XFLEET_CALC.OFFERS");

			  while (sr.next()) {
				int offer = sr.getInt("COUNT(*)");
				System.out.println("Anzahl der Angebote: " + offer);
			  }
			// Fetch each row from the result set
			  while (rs.next()) {
				 int order = rs.getInt("COUNT(*)");
				 System.out.println("Anzahl der Bestellungen: " + order);
			  } 
		}
		  	catch (SQLException e) {
			}
	  return rs;
	}
 
Hallo,

dieses, bzw. ein Problem des gleichen Typs haben wir doch schon hier besprochen.

Ja, deine Vermutung ist richtig.
Du musst die Variablen ausserhalb der while-Schleifen deklarieren.
 
ja stimmt so gehts! gibts auch ein tofloat? weil wenn ich die beiden zahlen miteinander teile dann bekomme ich komma zahlen die aber ganzzahlig ausgegeben werden! d.h gerundet auf eine ganze zahl!
 
Zurück