AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken ID nicht gefunden nach last_insert_rowid()
Thema durchsuchen
Ansicht
Themen-Optionen

ID nicht gefunden nach last_insert_rowid()

Ein Thema von EdAdvokat · begonnen am 13. Mai 2017 · letzter Beitrag vom 16. Mai 2017
Antwort Antwort
nahpets
(Gast)

n/a Beiträge
 
#1

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 13:51
Ich schrieb nicht ganz umsonst:SELECT MAX(ID) AS ID FROM KONTAKTE Wenn Du dann SELECT MAX(ID) FROM KONTAKTE nimmst, ist das natürlich was anderes.

Bitte übernimm bei Vorschlägen den ganzen Quelltext und nicht nur irgendwelche Teilmengen. Das kann bei der Fehlersuche deutlich hilfreich sein.

Wenn man MAX(ID) in 'nem SQL hat, dann heißt das nicht zwingend, dass die Spalte im Ergebnis dann auch Max heißt. Bei SQLite und FireBird mag das so sein.
Andere Datenbanken liefern dann auch schonmal Expr_1 oder, je nach Anzahl der verwendeten Funktionen Expr_1 bis Expr_n.

Man sollte bei Funktionen immer ein AS Spaltenname machen, damit man weiß, wie die Spalte im Ergebnis heißen wird.
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 14:04
Wenn's ums Lernen geht:

Bezüglich SQL: Einführung in die SQL Grundlagen

Auf der Seite wird auch beschrieben, was es mit dem AS auf sich hat: Daten abfragen

Viel mehr zum Thema: Grundlagen SQL

Bevor man sich da datenbankspezifisch auf die Besonderheiten der einzelnen System "stürzt", lieber erstmal allgemein informieren.
  Mit Zitat antworten Zitat
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
415 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 14:13
Hallo Stephan, in #27 habe ich bereits dein Lösungsvorschlag beschrieben und leider erfolglos geprüft und gepostet. qMain.SQL.Text:='SELECT MAX(ID) AS ID FROM KONTAKTE'; erfolglos probiert. Ebenfalls die bekannte Exception. Ich bemühe mich durchaus exakt die Vorschläge aufzugreifen und zu prüfen.
Ich habe mir bezüglich SQL-Tutorials schon einiges angesehen und werde die Tipps natürlich auch aufgreifen.
Norbert

Geändert von EdAdvokat (14. Mai 2017 um 14:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.260 Beiträge
 
Delphi 12 Athens
 
#4

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 14:21
Einen Tipp hast du vergessen.

* SQL-Tools verwenden
* oder dir selber einen SQL-Betrachter basteln.
Also ein DBGrid, was das gesamte Ergebnis einer SQL-Abfrage anzeigt und am Besten auch den Typ der Felder erkenntlich macht.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (14. Mai 2017 um 15:02 Uhr)
  Mit Zitat antworten Zitat
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
415 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 14:28
Himitsu, doch durchaus habe ich mir einen DBBrowser installiert und mit einem SQL-Tutorial praktischBeispiele probiert. Natürlich bin ich noch nicht in alle Untiefen der SQL-Sprache eingedrungen.

Noch an Wort zu Stephans Kritik: Das von mir erwähnte Beispiel war ein Vorschlag von himitsu aus dem Post #26. Das leider nicht funktioniert hat. Ich habe nicht dein SQL-Select gemeint. Kommt sicher schon mal vor, bei den Häufungen an Versuchen.
Norbert
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.260 Beiträge
 
Delphi 12 Athens
 
#6

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 15:32
Zitat:
doch durchaus habe ich mir einen DBBrowser installiert
Aber da fällt dann auch auf, wie die Spalte bei SELECT MAX(ID) FROM KONTAKTE heißt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
415 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

AW: ID nicht gefunden nach last_insert_rowid()

  Alt 14. Mai 2017, 15:58
ja die heißt MAX(ID) und nicht ID, wie sie heißen sollte. Noch eine kurze Erklärung von mir: Ich habe überhaupt nicht in die Richtung gedacht, da es mit ROWID und den Zeos-Komp. wunderbar geklappt hat, dass es an einem nicht exakten SQL-Statement liegen könnte und in diese Richtung weiter gedacht werden muss. Jetzt nach Eurer Erklärung sind mir die Augen geöffnet worden - so ein wenig zumindest. Das was ich zur Funktion rowID... gefunden habe, war für mich nicht so erhellend, obwohl ich doch einiges leider überwiegend engl. auf der SQLite-Seite gelesen habe. Ich war der Auffassung, dass es an etwas anderem liegen muss, als an dem bewußten SQL-Statement mit der Funktion RowID...
Das Darstellungsproblem nach Bearbeiten habe ich zwischenzeitlich auch gelöst. Jetzt läuft alles vermutlich exakt.
Ich suche noch immer vergeblich nach Quelltexten zu einfachen Datenbankanwendungen, die ich als Beispiel zum lernen verwenden könnte. Ähnlich wie dieses einfache Adressprogramm zu SQLite. Gibt es da einen Tipp, wo ich suchen könnte ggf. auch zu anderen Datenbankanwendungen.
Danke nochmals für die Unterstützung.
Norbert

Geändert von EdAdvokat (14. Mai 2017 um 16:15 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz