Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

da binn ich wieder ^^

also ich möchte bei meiner GUY ein extra feld einfügen in dem das durchschnittsalter berrechnet wird, dazu wollte ich zuerst das gesamtalter ausrechnen und dann durch die anzahl der spalten teilen leidder treten bei mir volgende probleme auf

soweit ich weiß ist der sql befehl zum zusammenrechnen

select sum('spaltenname') from tabelle

das problem ist das er nicht zusammrechnet sonder den befehl im textfeld ausgibt

und das andere problem ist gibt es einen sql befel der alle bereits geschriebenen zeilen zählz und in einer zahl ausgibt???

soweit ich weiß ist der sql befehl zum zusammenrechnen select sum('spaltenname') from tabelle

das problem ist das er nicht zusammrechnet sonder den befehl im textfeld ausgibt

Na woher soll "er" denn auch wissen, dass es kein Text sondern ein SQL-Befehl ist? Das wirst du schon zu Fuß machen müssen.

gibt es einen sql befel der alle bereits geschriebenen zeilen zählz und in einer zahl ausgibt???
man count(*)

naja aber jetz sagt er mir datentypen unverträglich und wenn ich die ' wegmachen meckert eclips auch -.-

Ja, dann hast du wohl etwas falsch gemacht.

Mal im Ernst, meinst du, dir kann irgendjemand helfen, wenn du so wenig Informationen lieferst? Wir sind keine Hellseher. Der beanstandete Code ist doch das Mindeste.

  • Autor

Toolbox myBox = new Toolbox();

myBox.setAccessData ("Schueler.mdb");

String[][] data=myBox.queryAccess

("select sum('alter')from Schuelertab"); // = SQL Exception: [Microsoft][ODBC Microsoft Access Driver] Datentypen in Kriterienausdruck unverträglich.

jTextAreaStatus.setText(data[0][0]);

du postest jedes kleines problem anstatt eine suchmaschiene deiner wahl zu bemühen, da solltest du doch schon mal die code tags benutzen. Sind ja nich nur da um die menü leiste schön zu machen :/

du hast den tipp, das man das mit count macht ja noch nicht einmal eingebaut. villt solltest du das auch mal probieren

link

Bearbeitet von elSusto

("select sum('alter')from Schuelertab"); // = SQL Exception: [Microsoft][ODBC Microsoft Access Driver] Datentypen in Kriterienausdruck unverträglich.
Dann würde ich spontan darauf tippen, dass deine Datenbankspalte 'alter' kein numerischer Typ ist - nur diese lassen sich nämlich aufsummieren.

Soweit ich weiß werden Felder in Access in [] gesetzt

Also:


("select sum([alter])from Schuelertab");

Sollte das nicht zum Erfolg führen, würde ich erstmal versuchen die Abfrage in Access lauffähig zu machen. Also mit Hilfe einer View. Wenn dann die Abfrage funktioniert müsste Sie auch aus Java heraus funktionieren.

statt sum und count, benutze doch einfach AVG(feld). Das ermittelt gleich den Durchschnitt.

  • Autor

was ist ein avg feld???? (in eclipse oder acces)??? und wie mach ich es ??

mit den [] steht dann volgendes da

Toolbox myBox = new Toolbox();

myBox.setAccessData ("Schueler.mdb");

String[][] data=myBox.queryAccess

("select sum([alter])from Schuelertab"); // = SQL Exception: String index out of range: -1

jTextAreaStatus.setText(data[0][0]);

mein datenfelt bei access ist ein long integer typ also eine zahl

die sql exception steht sowahl bei dieser program art als auch bei avg (hab mich bei google kurz uber avg erkundigt Google Übersetzer)

aber da kommt immer nur auserhalb der reichweite -1

Bearbeitet von screamboy14

was ist ein avg feld????
AVG ist kein Feld sondern eine SQL Aggregatfunktion. Wenn du nicht weißt was eine Aggregatfunktion ist lies bitte zunächst ein SQL-Tutorial oder eigne dir die Informationen auf andere Weise an und frage erst dann weiter.

aber da kommt immer nur auserhalb der reichweite -1
Hast du das entsprechende Statement auch schon einmal direkt in Access getestet und kannst somit eingrenzen, dass der Fehler auf JDBC-Ebene liegt? Wenn nein: machen!
  • Autor

problem ist nur das ich mich sowas von garnicht mit acces auskenne das einzige was ich weiß ist wie ich eine tabelle erstelle und ggf ändere mehr wurde mir zu diesem thema nihct beigebracht

wie soll ich das statementr denn in access testen (sry das euch bei dieser frage jetz die haare zu berge stehen ) =(

hier findest du bestimmt was ^^

du du jetzt ja schonmal weißt das es sowas wie google gibt kannste einfach mal access tutorial eingeben .... da wirste bestimmt was finden ;-)

viel spaß und glück

  • Autor

hab da schon wegen SQL Aggregatfunktion geschaut (wobei ich vorher wusste was das ist nur eben den fachbegriff nicht davür kannte)

ich gug mal ^^

aber qwo soll ich da gugen wenn ich statemnts testen will

thx für den tipp ^^

Bearbeitet von screamboy14

problem ist nur das ich mich sowas von garnicht mit acces auskenne das einzige was ich weiß ist wie ich eine tabelle erstelle und ggf ändere mehr wurde mir zu diesem thema nihct beigebracht
And that's it?

Wenn du in der Lage bist hier ein Posting zu verfassen bist du jawohl auch in der Lage dir im Netz entsprechende Informationen zu organisieren, wie Access aufgebaut ist, wie die Daten struktutiert sind und um was es bei dem Konzept "Datenbank" überhaupt geht.

wie soll ich das statementr denn in access testen
Ich habe lange nicht mehr mit Access gearbeitet aber auch hier ist eine Google-Suche deutlich schneller als darauf zu warten hier sämtliche Antworten vorgekaut zu bekommen.

http://lmgtfy.com?q=access+sql+ausführen

Und ach ja: Ein paar weniger Smileys und dafür eine sachlichere Ausdrücksweise würde dir garantiert auch nicht schlecht zu Gesichte stehen und die Chancen auf qualifizierte Antworten deutlich erhöhen.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.