![]() |
Datenbank: Firebird • Version: 2.0 • Zugriff über: IB-Expert
DB Grid Einträge duplizieren & ..
Guten Morgen,
ich bräuchte mal eure Hilfe weil ich nicht weiterkomme. 1. Wie kann ich Einträge in einem DBGrid duplizieren? (Datenbankebene) 2. Wie kann ich beim speichern eines Strings in eine Datenbank überprüfen, ob ein bestimmter Teil des Strings schon vorhanden ist bei den anderen Einträgen in der Spalte. 3. Wie kann ich Datensätze nach der höchsten Versionsnummer durchsuchen? Beispiel: 4 datenbankeinträge id name 0 Projekt 1.0 1 Projekt 1.1 2 Projekt 1.2 3 Projekt 1.3 In meinem programm kann ich in einem Projektladenfenster ein projekt öffnen. beim laden wird das projekt dupliziert (damit der gespeicherte Stand nicht überschrieben werden kann). Das dup. Projekt soll eine höhere Version zugewiesen bekommen (hier 1.4) als vorhanden ist, egal welches Projekt geladen wird. Meine jetztige Prozedure rechnet immer nur eins hoch (zb. wenn ich 1.1 lade .. generiert er 1.2, obwohl es 1.4 sein soll, weil ich in meiner proz. ja bevor ich das projekt duplizier auf 1.1 zugreife und daher die versionsnr habe und die einfach + 0.1 rechne :/.. quasi durchsuch ich die datenbank nicht nach der höchsten vorhandenen versionsnr weil ich nich weiss wie das geht) (sry konnte das iwie schlecht ausdrücken was ich meine) thx |
Re: DB Grid Einträge duplizieren & ..
Zitat:
SQL-Code:
Insert into ... select ...
Zitat:
SQL-Code:
Select ... containing
Zitat:
SQL-Code:
select max( version) from <Tabelle> group by name;
|
Re: DB Grid Einträge duplizieren & ..
guten morgen!
danke .. punkt 2 und 3 war in null komma nixs gemacht. an punkt 1 hänge ich noch. also nehmen wir mal an ich habe ein dbgrid mit 5 einträgen und möchte sie nun per buttonklick alle duplizieren (halt nur neue id). wie ich einen einzelnen dupliziere weiss ich. wäre nett wenn ihr mir noch mal auf die sprünge helfen würdet. danke! mfg |
Re: DB Grid Einträge duplizieren & ..
Hallo,
Zitat:
Zitat:
Was heisst duplizieren genau ? Ich würde das mit einer StringList machen, die speichert die Ids der 5 Einträge
Delphi-Quellcode:
Ja, man könnte auch eine eigene separate Transaktion benutzen (MGA ausnutzen),
var
StrList: TStringList; DataSet: TDataSet; begin StrList:= TStringList.Create; DataSet:= Tab11; / Query1, was immer du als Grundlage des DBGrid hast DataSet.First; while not DataSet.EOF do begin StrList.Add(DataSet.FieldByName('Id').AsString; end; for i:= 0 to StrList.Count-1 do begin Dupliziere (StrToint(StrList[i])); end; end; procedure Dupliziere(theId: Integer); begin // finde Datensatz Query1 'select * from TableXXX where id='+IntToStr(theId) Open; Close // daten anhängen Query2 insert into ... Oder mit einer Query insert into tableXXX select end; aber ich denek, das wäre für dich zu kompliziert. Heiko Heiko end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:50 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-2025 by Thomas Breitkreuz