Autor Beitrag
Kauli
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 01.02.05 23:17 
Nabend zusammen.

Ich hab am Wocheende beschlossen, meine Delphi-Kenntnisse mal wieder aufzufrischen und eine kleine Anwendung geschrienen, die, unter anderem, auch etwas aus einer Tabelle löscht:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
procedure TBSIForm.delteEntry;
begin
  if uebergabename <> '' then
  begin
    with BSIForm.bsitab do
    begin
      open;
      first;
      while fieldbyname('name').AsString <> uebergabename do
      begin
        next;
      end;
      delete;
      close;
    end;
  end;
  BSIForm.show;
end;


bsitab ist vom Typ ttable und das ganze ist ne Prozedur, die als public deklariert ist.

Wenn ich nun für die Tabelle in ttable eine paradox7 Tabelle verwende und die direkt mit "bsitab.TableName := MeineTabelle.db" übergebe, dann funktioniert das ganze ohne Probleme, wenn ich aber eine Access-DB verwende und das ganze per ODBC anbinde, dann steigt das Programm direkt nach dem "delete" mit der Fehlermeldung "mehrere Datensätze vorhanden" aus.

Hat jemand ne Idee, woran das liegen könnte?

Gruss
Kauli

PS: Beteiligt an dem ganzen ist Borland Delphi 3.0 (Build 5.83), Win 2K und Access 2K SP3
grayfox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 800

win98, winXP
D4 Standard; D6 Personal
BeitragVerfasst: Di 01.02.05 23:24 
hallo kauli!

ausblenden Delphi-Quelltext
1:
2:
   while fieldbyname('name').AsString <> uebergabename do begin
     next


findest du das sinnvoll, durch die ganze tabelle zu iterieren, wenn du einen datensatz suchst?
was hältst du von 'Locate' bzw einer SQL-löschabfrage?

zu deiner fehlermeldung kann ich allerdings nichts anmerken - so eine meldung hab ich auch noch nie erhalten.

_________________
mfg, stefan
Kauli Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 01.02.05 23:33 
Hi grayfox.

Das meinte ich mit auffrischen, an locate hab ich gar nicht mehr gedacht. Ich hab am WE wirklich zum ersten mal seit mindestens 4 Jahren ein Delphi-Prog geschrieben.

Gruss
Kauli

PS: SQL wäre zu billig, damit arbeite ich jeden Tag. :wink: Es ging mir wirklich um auffrischen nicht um was sinnvolles.