AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Mit Hilfe von SQL überprüfen ob die ID schon vergeben ist?
Thema durchsuchen
Ansicht
Themen-Optionen

Mit Hilfe von SQL überprüfen ob die ID schon vergeben ist?

Ein Thema von MarcZohren · begonnen am 23. Jan 2004 · letzter Beitrag vom 23. Jan 2004
Antwort Antwort
MarcZohren
(Gast)

n/a Beiträge
 
#1

Mit Hilfe von SQL überprüfen ob die ID schon vergeben ist?

  Alt 23. Jan 2004, 13:49
Hallo zusammen,

ich bins mal wieder!

Kann mir einer von euch eventuell sagen wie ich mit Hilfe von SQL herausfinden kann, ob eine ID schon in meiner Tabelle vorhanden ist!?

Mein Ansatz:

Delphi-Quellcode:
  with FHaupt.ADOQuery do begin
    Active := FALSE;
    SQL.Clear;
    SQL.Add('SELECT ' + FieldCheckID + ' FROM ' + Datenbank.TableCheckID);
    SQL.Add(' WHERE ' + FieldCheckID + ' = ''' + ID + '''');
    Active := TRUE;
    Open;
  end;
Gruß Marc
  Mit Zitat antworten Zitat
barnti

Registriert seit: 15. Aug 2003
Ort: Mal hier mal da...
689 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Mit Hilfe von SQL überprüfen ob die ID schon vergeben is

  Alt 23. Jan 2004, 14:03
Hi,

für gewisse Komponenten gibt es eine Lookup-Funktion. Mit der kannst Du einen Wert in einer Tabelle suchen. Vielleicht auch über die Funktion "Lastinsert_id"...

Hoffe das hilft?

Gruß,

Barnti
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#3

Re: Mit Hilfe von SQL überprüfen ob die ID schon vergeben is

  Alt 23. Jan 2004, 14:12
Dein Code sollte eigentlich funktionieren.
Du kannst es ja mal so versuchen...


Delphi-Quellcode:
  with FHaupt.ADOQuery do
  begin
    Active := False;
    SQL.Text :=
      'SELECT ' + FieldCheckID + #10 +
      'FROM ' + Datenbank.TableCheckID + #10 +
      'WHERE ' + FieldCheckID + ' = :i_ID';
    Prepared := True;
    Parameters.ParamByName('i_ID').Value := ID;
    // ich weiß nicht, ob Active bei ADO unbedingt auf True gesetzt werden muss...
    Active := True;
    Open;
    if Eof then
      Found := False
    else
      Found := True;
  end;
  Mit Zitat antworten Zitat
MarcZohren
(Gast)

n/a Beiträge
 
#4

Re: Mit Hilfe von SQL überprüfen ob die ID schon vergeben is

  Alt 23. Jan 2004, 14:22
Hi, danke für die antwort!

Ja der Code funktioniert auch, aber ich weiß nicht wie ich abfragen kann, ob ich einen Wert zurück bekomme.

Wenn die ID vorhanden ist, dann bekomme ich den Datensatz übermittelt, wenn sie nicht vorhanden ist dann bekomme ich einen leeren Datensatz.

Wie kann ich das abfragen??

Gruß Marc
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#5

Re: Mit Hilfe von SQL überprüfen ob die ID schon vergeben is

  Alt 23. Jan 2004, 14:39
Code:
    SQL.Text :=
      'SELECT Count(*) Count_ID' + #10 + 
      'FROM  ' + Datenbank.TableCheckID + #10 + 
      'WHERE ' + FieldCheckID + ' = :i_ID';
Wenn das Feld "Count_ID" den Wert 0 enthält ist die ID noch nicht da, andernfalls ist sie schon vorhanden.

p.s.: soetwas meinte r_Kerber mit Unterschieden zwischen Access-SQL und dem von "richtigen" DBs.
Dort hättest du keine Zeile bekommen, wenn deine Where-Clause nicht erfüllt ist.
  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 04:45 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