AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.
Thema durchsuchen
Ansicht
Themen-Optionen

SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

Ein Thema von hewy · begonnen am 14. Sep 2022 · letzter Beitrag vom 16. Sep 2022
Antwort Antwort
hewy

Registriert seit: 2. Aug 2006
Ort: Arni (Region Zürich) Schweiz
83 Beiträge
 
Delphi XE5 Enterprise
 
#1

SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 15:17
Datenbank: SQLite • Version: 3.10.0 • Zugriff über: Delphi -> SQL Query
Eigenartiges Problem folgende Abfrage sollte mir doch alle Datensätze der Tabelle geben welche im Feld ‘SourceId_Out’ den Wert 0 haben.
‘SELECT SourceId_Out FROM Tm_TimeDayData WHERE SourceId_Out = 0’ oder auch '.... < 1'.
Allerdings muss ich in meinem Fall ‘SELECT SourceId_Out FROM Tm_TimeDayData WHERE SourceId_Out > 99999999’ eingeben kann auch noch ein paar 99 dazu hängen
Komme aber nicht darauf was ich hier falsch mache.
DB: SQLite Habe das selbe Verhalten in Delphi XE5 mit FireDAC oder mit SQLiteExpert direkt die Abfrage unter 'SQL'.
Die Tabelle Tm_TimeDayData enthällt im Feld ‘SourceId_Out’ unterschiedlichste Werte versuche ich einer dieser Werte, Beispiel 327 nehme dann funktioniert es einwandfrei. Und gibt mir alle Datensätze welche im genannten Feld 327 haben.

Wo könnte das Problem liegen und wie komme ich damit weiter. Nach 999999 zu filter um die Datensätze mit dem Wert 0 im genannten Feld zu bekommen wäre mir eher etwas unsympathisch.

Schon mal vielen Dank für jegliche Hilfe oder Hint.
Heinrich Wyssen

Geändert von hewy (14. Sep 2022 um 15:19 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke
Online

Registriert seit: 10. Jun 2003
Ort: Berlin
9.848 Beiträge
 
Delphi 12 Athens
 
#2

AW: SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 15:37
Bist du sicher, dass da 0 in dem Feld steht und nicht ein nicht darstellbarer Wert?

Könntest du vielleicht ein kleines Beispiel anhängen? Du kannst ja die anderen Felder löschen. Ich hatte das Problem noch nicht, wenn ich solche Abfragen bei SQLite gemacht habe.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
hewy

Registriert seit: 2. Aug 2006
Ort: Arni (Region Zürich) Schweiz
83 Beiträge
 
Delphi XE5 Enterprise
 
#3

AW: SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 16:14
Danke für dein Hilfe Angebot Sebastian,
Habe noch etwas versucht.
Wenn ich die den Inhalt der Tabelle nach Excel kopiere und dann wieder zurück funktioniert es anschliessend mit den WHERE Feld = 0.
In Excel sieht es auch korrekt aus. Daher gehe ich davon aus dass die Tabelle irgendwie korrupt ist.
Also geht es darum einen Weg zu finden wie ich die 0 in echte 0 umwandeln kann.
Kann Dir gerne eine Tabelle mit reduziertem Inhalt zustelle vielleicht siehst Du da woran es liegt und was zu tun ist ohne die Daten zu verlieren.
Heinrich Wyssen
  Mit Zitat antworten Zitat
hewy

Registriert seit: 2. Aug 2006
Ort: Arni (Region Zürich) Schweiz
83 Beiträge
 
Delphi XE5 Enterprise
 
#4

AW: SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 16:34
Und hier eine DB. es hat zwei Tabelle Tm-SelectTest und Tm_SelectTest_Bak sind beide gleich mit gleichem Inhalt.
Und auch eine View 'SelectTest' diese sollte alle Datensätze auflisten welche im Feld SourceId_Out = 0 haben.
SELECT * FROM Tm_SelectTest WHERE SourceId_Out = 0
Findet aber kein Datensatz obwohl es einige gibt.
Heinrich Wyssen

Geändert von hewy (14. Sep 2022 um 20:52 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke
Online

Registriert seit: 10. Jun 2003
Ort: Berlin
9.848 Beiträge
 
Delphi 12 Athens
 
#5

AW: SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 18:05
Also ich weiß nicht, warum das bei dir nicht der Fall ist, aber bei mir zeigt SQLite Expert direkt an, dass da etwas komisch ist:

2022-09-14.jpg

In der Spalte steht, wie man sieht, ein Text statt einer Zahl. Und dieser Text ist natürlich nicht "= 0". Deine Tabelle ist nicht in Ordnung.

Du solltest den Anhang übrigens wieder löschen. Du hast vergessen die gelöschten Tabellen mit "Vacuum" zu bereinigen. Die gelöschten Inhalte, die da noch drin sind, sind glaube ich nicht für die Öffentlichkeit bestimmt.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 18:17
Ich sehe keine 0 in dieser Tabelle, aber ganz viele "irgendwas"


[edit]
wo kommt den plötzlich der jaeneke her

Joar, so eine halbwegs typlose Datenbank hält schnell mal ein paar kleine Problemchen bereit, wenn man überall nahezu alles reinschreiben kann.
Angehängte Grafiken
Dateityp: jpg BDSelectTest.db.jpg (153,9 KB, 22x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (14. Sep 2022 um 18:20 Uhr)
  Mit Zitat antworten Zitat
BerndS
Online

Registriert seit: 8. Mär 2006
Ort: Jüterbog
492 Beiträge
 
Delphi 12 Athens
 
#7

AW: SQLite will mit SELECT ... WHERE fieldxx = 0 Werte nicht anzeigen.

  Alt 14. Sep 2022, 18:31
Mit dem Delphi Tool db Explorer wird aber eine 0 angezeigt. Dazu hab ich mal die DB dort registriert.
  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 22:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz