Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Paradox : Felder vergrößern (https://www.delphipraxis.net/79264-paradox-felder-vergroessern.html)

Sven Janssen 19. Okt 2006 10:52

Datenbank: Paradox • Version: 7 • Zugriff über: BDE

Paradox : Felder vergrößern
 
Hallo,

gibt es eine einfach Möglichkeit (z.b per SQL) die Felder in einer Paradoxdatei zu vergrößern?

- Sonst müsste ich ein neues Feld anlegen
- den Inhalt von dem einen Feld ins andere kopieren
- Orignalfeld entfernen
- wieder mit der neuen Länge anlegen
- Inhalt kopieren
- Tempfeld löschen

Ich müsste das für 3 Felder in einer Datei mit ca 5000-10000 Datensätze machen.

mkinzler 19. Okt 2006 10:59

Re: Paradox : Felder vergrößern
 
Schon mit dem Alter (SQL-)Befehl versucht?

Sven Janssen 19. Okt 2006 11:04

Re: Paradox : Felder vergrößern
 
Mit Alter alleine wird da nicht viel passieren.
Ich kenne add und drop column. Aber ich finde in meinen Dokumentationen und im Intenret nichts um Felder zu vergrößern.

mkinzler 19. Okt 2006 11:10

Re: Paradox : Felder vergrößern
 
Manche DBMS verstehen
SQL-Code:
alter table <tabelle> alter <feld> type <newtype>;

Jürgen Thomas 19. Okt 2006 11:13

Re: Paradox : Felder vergrößern
 
Hallo,

wenn ich mich richtig erinnere (Andreas Kosch bei Delphi 2.0), geht es in der Tat nicht direkt. Du musst es also in der Tat mit dem von Dir skizzerten Verfahren erledigen:
Zitat:

Zitat von Sven Janssen
- Sonst müsste ich ein neues Feld anlegen
- den Inhalt von dem einen Feld ins andere kopieren
- Orignalfeld entfernen
- wieder mit der neuen Länge anlegen
- Inhalt kopieren
- Tempfeld löschen

Aber mit SQL geht das ruck-zuck: Jede dieser Maßnahmen entspricht einem einzigen SQL-Befehl; und in der Datenbankoberfläche der BDE kann das erledigt werden.

Gruß Jürgen

Sven Janssen 19. Okt 2006 11:22

Re: Paradox : Felder vergrößern
 
Hallo Jürgen,

danke für die Info. War mir irgendwie schon klar.
Eine Frage habe ich noch.
Wie kopiere ich den Feldinhalt von einem Feld in ein anderes für alle Datensätze per SQL?
Die anderen Befehle kenne ( und nutze ) ich.

Jürgen Thomas 19. Okt 2006 11:26

Re: Paradox : Felder vergrößern
 
Zitat:

Zitat von Sven Janssen
Hallo Jürgen,

danke für die Info. War mir irgendwie schon klar.
Eine Frage habe ich noch.
Wie kopiere ich den Feldinhalt von einem Feld in ein anderes für alle Datensätze per SQL?
Die anderen Befehle kenne ( und nutze ) ich.

SQL-Code:
UPDATE Tabelle SET Neues_Feld = Altes_Feld;
Normalerweise gibt es dazu noch alle Varianten wie WHERE usw.; aber Du willst ja alles kopieren.

mkinzler 19. Okt 2006 11:27

Re: Paradox : Felder vergrößern
 
SQL-Code:
update <tabelle> set <feldneu> = <feldalt>;

Sven Janssen 19. Okt 2006 11:52

Re: Paradox : Felder vergrößern
 
Danke euch zweien.

hoika 19. Okt 2006 11:53

Re: Paradox : Felder vergrößern
 
Hallo,

wenn es nicht SQL sein muss,
ginge es direkt über DbiDoRestructure.
Beispiele sind auf der Borland-HP


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:50 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