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.

Höchste Spielernr in Datenbank suchen

Empfohlene Antworten

Veröffentlicht

Hallo Leute

Wer kann mir beim folgenden Link helfen.

Ich sollte aus der Access Datenbank die höchste spielernr. suchen und in textbox 1 einfügen. Aber es klappt nicht.

Danke

con_ja.ConnectionString = "Provider = Microsoft.jet.oledb.4.0;" & "Data source =" & dsp.InitialDirectory

Cmd.Connection = con_ja

Cmd.CommandText = "SELECT max(spielernr) FROM jassen"

Try

con_ja.Open()

reader = Cmd.ExecuteReader()

Do While reader.Read()

TextBox1.Text = (reader("max(Spielernr)"))

MsgBox(TextBox1.Text)

Loop

Catch ex As Exception

' MsgBox(ex.Message)

End Try

reader.Close()

Geht nicht ist keine ausreichende Fehlerbeschreibung.

Noch nie gewesen, wird's auch nie sein.

How To Ask Questions The Smart Way

Lesen. Jetzt!

das textbox1 Feld bleibt leer. Er findet die höchste Zahl nicht.

ja, damit hat "er" Recht, wenns zB in der Tabelle keine Spieler gibt

es befinden sich 37 Datensätze in der Datenbank (Tabelle).

Und die MessageBox im Catch-Block? Ist die auskommentiert, um die Diagnose zu erschweren?

nein , da bringt er mir nur "max(spielernr)" und darum hab Ich sie weg geschaltet.

es befinden sich 37 Datensätze in der Datenbank (Tabelle).

ja und ? das sagt gar nix dazu aus, dass du ein vernünftiges Maximum bekommst

da wir hier nur raten können, welche Typen deine Tabellenattribute haben, solltest du versuchen dein problem nachvollziehbar zu beschreiben:

Bekommst du das erwartete Ergebnis, wenn du die Anfrage ohne den Code als reines SQL ausführst ?

Bekommst du das erwartete Recordset mit korrekten Ergebnissen zurück ? (sieht man im Debugger)

Aufbau meiner Datenbank (Tabelle)

Tabellen name = jassen

Felder : spielernr. Nummerisch, Name und Vorname Charakter 30

es befinden sich 37 Datensätze in der Tabelle.

Wenn Ich das oben genannte Skript durchlaufen lasse kommt bei mir Textbox1.text = "".

Wenn Ich das oben genannte Skript nur mit spielernr (ohne max()) durchlaufen lasse bringt er mir alle 37 spielernr in derTextbox1

Ich Glaube das er mit max(Spielernr) keine Daten aus der Datenbank (Tabelle) lesen kann.

nein , da bringt er mir nur "max(spielernr)" und darum hab Ich sie weg geschaltet.
Das heißt, es tritt eine Exception auf? Und du löst das Problem, indem du die Meldung entfernst?

So kann man's natürlich auch machen.

Dir ist schon klar, dass die Exception dann immer noch auftritt, und du nur nichts mehr davon mitbekommst?

In der Exception Meldung steht nur "max(spielernr)". Damit kann Ich nichts Anfangen und damit Ich da nicht immer auf OK klicken muss hab Ich es weggeschaltet.

Damit kann Ich nichts Anfangen und damit Ich da nicht immer auf OK klicken muss hab Ich es weggeschaltet.
Du kannst dir meinetwegen gern selbst alle Diagnosemöglichkeiten nehmen.

Und du kannst auch in deinem Auto die Musik ganz laut aufdrehen, damit du das Klappern nicht mehr hörst. Bedenke aber, dass diese Informationen, die du da absichtlich ausfilterst, für Andere wichtig sein können.

Ich vermute mal, dass der Reader mit "max(spielernr)" nichts anfangen kann. Versuch's doch mal mit der int-Variante:

SqlDataReader.Item Property (Int32) (System.Data.SqlClient)

Hast du das getan?

was meinst du damit? "Hast du das getan?"

Ich kann kein Englisch !

Sorry

was meinst du damit? "Hast du das getan?"
Ganz einfach: Ob du dir den Text durchgelesen hast. Dann würdest du nämlich gelesen haben, dass du ein wenig anders fragen solltest.

Ich kann kein Englisch !
Und dann arbeitest du im IT-Bereich? Sorry, aber dann wirst du früher oder später noch öfters auf die Nase fallen.

Anyway - der Text, den ich verlinkt habe findet sich auch auf deutsch:

http://www.tty1.net/smart-questions_de.html#code

Also: Lesen, verstehen, handeln!

Cmd.CommandText = "SELECT max(spielernr) As MAXNR FROM jassen"
TextBox1.Text = (reader("MAXNR"))

Solche Aggregatfunktionen wie MAX, MIN, SUM etc. sind am Besten über ein Alias anzusprechen.

Danke Perdian

Habe es durchgelesen und verstehe jetzt was du meinst.

Werde in Zukunft darauf achten.

Danke

Bearbeitet von Floh-2001

Hallo TDM

Mit deinem Tipp hat es Funktioniert

Danke

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

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.