AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Suche (SQL) nach neuen Datensätzen funktioniert nicht

Suche (SQL) nach neuen Datensätzen funktioniert nicht

Ein Thema von chrissy · begonnen am 27. Feb 2005 · letzter Beitrag vom 27. Feb 2005
Antwort Antwort
Seite 1 von 2  1 2   
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#1

Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 13:21
Datenbank: Paradox • Zugriff über: BDE
Hi!

Ich habe mir eine Paradox Datenbank angelegt und will nach eingetragenen Datensätzen suchen. Die Datensätze sind vorhanden, werden mir auch angezeigt, nur bei der SQL abfrage, gibt er mir immer nur die Möglichkeit nach den ersten 3 der insgesamt 7 Datensätze zu suchen (Diese 3 habe ich ganz zu beginn eingetragen).

Könnte das eventuell an nicht korrekten IndexFiles liegen?! Wenn ja, wie behebe ich das und beuge ein weiteres Auftreten dieses Problems vor, wenn nein, jemand ne andere Idee, wie ich das Problem lösen kann?!

schon mal besten Dank.

Gruß
Chrissy
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#2

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 13:27
Du solltest vielleicht näher beschreiben, wie die Daten und das SQL-Statement aussehen.
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#3

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 13:48
Ok, tschuldige....

Die Daten Stehen in mehreren Tabellen, wobei ich eigentlich nur in einer Suche, wo ich einen Auto-Inc Schlüssel habe und Name und Vorname, sowie Adresse, Telefonnummer, etc.

Mit einer SQL-Abfrage müchte ich nach Schlüssel (also einer Nummer) bzw. nach dem Namen, unterschieden in Name/Vorname oder Nur Name suchen.

Hier mal meine SQL-Statements:
Delphi-Quellcode:
   if (EdNummer.Text = '') then exit // Also, wenn nix zum Suchen da ist, kann man ja gleich Abbrechen
         else begin
             if (TryStrToInt(EdNummer.Text, nummer)) then //Kann schlecht nach ner Nummer suchen, wenn jemand n Wort eintippt ;)
                 begin
                   nummer:=StrToInt(EdNummer.Text);
                   with Daten.QSucheNummer do begin
                      close;
                      SQL.Clear;
                      SQL.Add('SELECT L.Id, A.Anrede, L.Name, L.Vorname, L.Geburtsdatum, L.Strasse, {u.s.w.} FROM "'+pfad+'Daten\anrede.DB" A INNER JOIN "'+pfad+'Daten\lehrer.db" L ON (A.Id = L.Anrede) {USW. bis alle Tabellen drin sind} WEHERE L.Id = :PNummer');
                      ParamByName('PNummer').AsInteger = nummer;
                      ExecSQL;
                      Open;
                   end;
                    DBAnzeige.Visible := false;
                    DBAnzeige.DataSource:=Daten.DSSucheNummer;
                    DBAnzeige.Visible:=true;
                 end
                  else exit;
         end;

Wie gesagt, die Abfrage Funktioniert bei den 1. 3 Datensätzen und bei den Restlichen bekomme ich ein leeres Fenster.... Aber mit den Richtigen Feldbezeichnungen, als wenn eben kein Datensatz mit der Nummer da wäre.....
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#4

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 14:14
hallo,

so mal überflogen
Delphi-Quellcode:
ParamByName('PNummer').AsInteger = nummer;
// hier dein sql
raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#5

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 14:33
Habs Ausprobiert, gibt ein Laufzeitfehler, und zwar: Parameter PNummer nicht gefunden.

Ich glaube das wars wohl doch eher nicht.....

Das Problem ist ja nicht, dass der AQL befehl gar nicht funktioniert, sondern dass er nicht auf allen Datensätzen funktioniert.

Aber dennoch danke für den Tipp
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#6

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 14:43
Zunächst erst mal ein Hinweis: Verwende möglichst BDE-Aliasnamen und keine Pfade.
Zitat:
L ON (A.Id = L.Anrede)
Ist L.Anrede tatsächlich auch Integer? Beschreibe doch bitte mal Deine Tabellenstruktur. Und erkläre mal, was Du angezeigt beommen möchtest (vielleicht mit Beispiel).
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#7

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 14:53
Also, ich habe eine Tabelle Anrede:
Schlüssel Id (Autoinc)
Anrede (Text)

Dann eine Tabelle Lehrer mit:
Schlüssel Id (AutoInc)
Fremdschlüssel Anrede (Integer)
Name, Vorname, etc. (Text)
Fremdschlüssel Ort (Integer)

Dann ebenso eine Tabelle Ort, mit Schlüssel als AutoInc und Ort und Vorwahl als Textfeld.


Angezeigt bekommen möchte ich die Person mit bestimmter schlüsselnummer oder bestimmten namen. Und zwar in einem Grid.

Also, wenn ich einen Lehrer mit

Id 1, Anrede 1 (also Herr), Name Test, Vorname Testus, ...... habe möchte ich, wenn ich nach Nummer 1 suche genau den Datensatz in dem Grid dargestellt bekommen.
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#8

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 15:40
In der Tabelle Lehrer sind 7 Datensätze mit Schlüssel 1 bis 7

wenn ich nach Datensatz 1 bis 3 Suche, bekomme ich meine Ergebnisse, so wies sein sollte, richtig Angezeigt,.... was mich vermuten lässt, dass der SQL Befehl nicht ganz falsch sein kann.

Wenn ich nach Datensatz 4 bis 7 suche, seis nach Nummer oder nach Name, ich bekomme nichts angezeigt, außer die Struktur mit leeren spalten, als wenn der Datensatz nicht vorhanden wäre...
Unter dem, dass ich mir alle anzeigen lasse, stehen diese in der Suche nicht gefundenen Datensätze aber drin.
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 16:28
Gibts denn auch in der Tabelle "Anrede" die Datensaätz mit Schlüssel 4,5,6,7... Sonst kannst du mit einen Inner Join nichts geliefert kriegen.
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#10

Re: Suche (SQL) nach neuen Datensätzen funktioniert nicht

  Alt 27. Feb 2005, 17:09
nein, nur mit 1 und 2, aber wie gesagt, bei 3 funktioniert es ja auch noch.....
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 11:44 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