AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datensätze verschieben!
Thema durchsuchen
Ansicht
Themen-Optionen

Datensätze verschieben!

Ein Thema von thomasvonmuenster1 · begonnen am 15. Apr 2004 · letzter Beitrag vom 15. Apr 2004
Antwort Antwort
thomasvonmuenster1

Registriert seit: 19. Mär 2004
132 Beiträge
 
Delphi 7 Enterprise
 
#1

Datensätze verschieben!

  Alt 15. Apr 2004, 12:10
Tabelle Lager und Tabelle Baustelle.
Bestimmte Datensätze solle in Tabelle Baustelle verschoben werden!
Bsp.5 Maschienen sollen auf die Baustelle.
Sollen von Lager in Baustelle verschoben werden.
  Mit Zitat antworten Zitat
Benutzerbild von Memo
Memo

Registriert seit: 19. Aug 2003
509 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Datensätze verschieben!

  Alt 15. Apr 2004, 12:22
Na dann mal rann. Wenn du dann eine Frage hast melde dich einfach.
  Mit Zitat antworten Zitat
thomasvonmuenster1

Registriert seit: 19. Mär 2004
132 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Datensätze verschieben!

  Alt 15. Apr 2004, 12:25
Wie kann man einen Datensatz verschieben?
In Access Tabellen!
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#4

Re: Datensätze verschieben!

  Alt 15. Apr 2004, 12:41
Zitat von thomasvonmuenster1:
Tabelle Lager und Tabelle Baustelle.
Bestimmte Datensätze solle in Tabelle Baustelle verschoben werden!
Du darfst keine Datensätze verschieben (falsches Datenbank-Design) !
Ich würde folgende Tabellen vorschlagen:
Code:
- Devices (=Geräte, Dinge, Baumaschinen)
  Schlüsselfeld ist IdDevice

- Standorte (pro Baustelle ein Datensatz; auch jedes Lager ist ein Datensatz)
  Schlüsselfeld ist IdLocation

- DeviceMenge (mit den Feldern IdDevice, IdLocation und Anzahl)
  Schlüsselfelder sind IdDevice & IdLocation
Soll eine Baumaschine vom Lager auf eine Baustelle, dann muss lediglich in der Tabelle
DeviceMenge in 2 Datensätzen das Feld Anzahl verändert werden.
Andreas
  Mit Zitat antworten Zitat
bttb930

Registriert seit: 6. Okt 2003
372 Beiträge
 
#5

Re: Datensätze verschieben!

  Alt 15. Apr 2004, 12:46
du schreibst ja super beiträge, der andere mit den tabellen senkrecht ist genauso klasse.

machs mit ner abfrage:

Delphi-Quellcode:
with TADOQuery.Create do
try
  Connection := ...
  SQL.Clear;
  SQL.Add('INSERT INTO tab2 (SELECT * FROM tab1 WHERE whereclause)');
  if ExecSQL > 0 then
  begin
    SQL.Clear;
    SQL.Add('DELETE FROM tab1 WHERE whereclause');
    ExecSQL;
  end;
finally
  Free;
end;
Irgendwie so müsste es klappen. Wobei die Tabellen gleiche Felder haben müssen. Und mit dem DELETE-Befehl solltest Du vorsichtig sein: Wenn der vorherige INSERT-Befehl fehlgeschlagen ist, dann löschst Du Daten die Du nicht löschen willst.
  Mit Zitat antworten Zitat
bttb930

Registriert seit: 6. Okt 2003
372 Beiträge
 
#6

Re: Datensätze verschieben!

  Alt 15. Apr 2004, 12:48
wobei shmia auf jeden Fall Recht hat: Verschieben ist in relationalen Datenbanken unnötig. Wenn man Datensätze verschieben möchte, dann sollte man sich nicht fragen "wie verschiebe ich?" sondern "wo ist mein datenbankdesign so mangelhaft dass ich's ändern sollte?".
  Mit Zitat antworten Zitat
thomasvonmuenster1

Registriert seit: 19. Mär 2004
132 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Datensätze verschieben!

  Alt 15. Apr 2004, 13:41
Ihr denkt doch nicht etwa ich hätte nur diese Tabellen.
Es sind 11 Tabellen und 17 Abfragen mit den ich arbeite.
Wollte nur einen anderen weg versuchen der schneller geht.
Man hat nur gefragt ob man Datensätze verschieben kann.
Danke.
  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 18:09 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