Autor Beitrag
colaka
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 200
Erhaltene Danke: 4

Win XP, W7
Delphi 2005 Prof.
BeitragVerfasst: So 18.12.11 17:17 
Hallo,

ich habe eine ziemlich große Tabelle (200.000 Datensätze) mit einem Boolean-Feld, das ich für alle Datensätze auf false setzen möchte. Bis jetzt mache ich das mit einer Schleife durch die ganze Tabelle, doch das dauert ziemlich lange.

Vielleicht gibt es eine Möglickeit, den Vorgang zu beschleunigen. Ich habe mir schon gedacht, das Feld zu löschen und dann wieder neu zu erzeugen. Doch erstens weiß ich nicht, wie man das macht, und zweitens weiß ich nicht, ob das dann schneller ist.

Oder gibt es vielleicht einen direkten Befehl für sowas?

Für Anregungen wäre ich sehr dankbar.

Gruß
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: So 18.12.11 17:33 
Per SQL, allerdings war das bei der BDE etwas speziell, müsste aber eine Hilfe dabei sein

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
Klabautermann
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Veteran
Beiträge: 6366
Erhaltene Danke: 60

Windows 7, Ubuntu
Delphi 7 Prof.
BeitragVerfasst: Mi 28.12.11 17:31 
Hi,

in wie Fern ist das speziell? Eigentlich sollte es doch reichen ein tQuery-Objekt an die Connection zu hängen und dann ein UPDATE <Tabellenname> Set <Feldname>=true zu fahren. Oder habe ich wirklich schon wieder so viele Zicken der BDE verdrängt?

@Colaka: Hier findest du unter anderen auch eine Beschreibung wie an so ein Query "fährt" ;).

Gruß
Klabautermann