Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Neuer Datensatz mit gleichen zähler (https://www.delphipraxis.net/68182-neuer-datensatz-mit-gleichen-zaehler.html)

Uwe 111 25. Apr 2006 20:38

Datenbank: BDE • Zugriff über: Hi

Neuer Datensatz mit gleichen zähler
 
Hi

Ich habe da ein Problem, wie bekommt man es hin ein neuen Datensatz mit gleichen zähler zu erzeugen?

Mfg
Uwe 111

mkinzler 25. Apr 2006 20:42

Re: Neuer Datensatz mit gleichen zähler
 
Wenn du mit Zähler die ID meinst, besser gar nicht. Die sollte eindeutig sein, also jede nur einmal.

Uwe 111 25. Apr 2006 20:47

Re: Neuer Datensatz mit gleichen zähler
 
Hi
Nein nicht über den zähler der ID

Delphi-Quellcode:
function TDM.getNextID(TableName: String): Integer;
  var s : string;
begin
  if TableName = 'Tour' then
    s := 'SELECT max(TourNr) as TourNr FROM ''Tour.db''';
    TourQ.Close;
    TourQ.SQL.Text := s;
    TourQ.Open;
    result := TourQ.FieldbyName('TourNr').AsInteger + 1;
    TourQ.Open;
end;

procedure TDM.TourAfterInsert(DataSet: TDataSet);
begin
  Tour.FieldByName('TourNr').AsInteger := getNextID('Tour');
end;
Mfg
Uwe 111

mkinzler 25. Apr 2006 20:50

Re: Neuer Datensatz mit gleichen zähler
 
Welche Datenbank?

Uwe 111 25. Apr 2006 20:52

Re: Neuer Datensatz mit gleichen zähler
 
Hi
BDE Paradoxtabelle

MfG
Uwe 111

mkinzler 25. Apr 2006 20:56

Re: Neuer Datensatz mit gleichen zähler
 
Meines Wissens gibt es in Paradox den feldtyp Counter/Zähler, der automatisch erhöht.
Willst due eien Sequenz simulieren?

Uwe 111 25. Apr 2006 21:00

Re: Neuer Datensatz mit gleichen zähler
 
Hi

ich will z.b.
TourNr Name Vorname
1 Müller Kai
1 Maier Thomas
2 Müller Udo
es so haben.

Mfg
Uwe 111

mkinzler 25. Apr 2006 21:09

Re: Neuer Datensatz mit gleichen zähler
 
Es scheint das mit deinem Datenabnkdesign nicht stimmt. Wie gesagt sollte (muß) die ID eindeutig sein. Un deinen Tabelle ist ein fall für die Normalisierung. D.H. die daten gehören in 3(2) Tabellen.

1.) Lösung mit 3 Tabellen
Tour
ID Bez
1 Tour 1
2 Tour 2

Kunde
ID Name Voranme
1 Müller Kai
2 Maier Thomas
3 Müller Udo

KundenTour
ID Tour Kunde
1 1 1
2 1 2
3 2 3

Tour
ID Bez
1 Tour 1
2 Tour 2

2.) Lösung mit 2 Tabellen

Kunde
ID Name Voranme Tour
1 Müller Kai 1
2 Maier Thomas 1
3 Müller Udo 2

Uwe 111 25. Apr 2006 21:19

Re: Neuer Datensatz mit gleichen zähler
 
Hi

Das ist nur ein Beispiel
TourNr Name Vorname
1 Müller Kai
1 Maier Thomas
2 Müller Udo
also 3 tabellen erstellen und verküpfen. So meinst due es?

MfG
Uwe 111

mkinzler 25. Apr 2006 21:23

Re: Neuer Datensatz mit gleichen zähler
 
Das wäre vom Datenbankdesign sauberste Lösung. Es wäre auch die Lösung mit 2 oder sogar in einer Tabelle möglich, aber am besten ist halt die Normalisierte (alle Felder hängen vom Primärschlüssel ab) in 3 Tabellen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:36 Uhr.
Seite 1 von 2  1 2      

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