AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Neue Spalte in einer FoxPro-Tabelle erzeugen
Thema durchsuchen
Ansicht
Themen-Optionen

Neue Spalte in einer FoxPro-Tabelle erzeugen

Ein Thema von WoTo · begonnen am 7. Dez 2005 · letzter Beitrag vom 7. Dez 2005
Antwort Antwort
WoTo

Registriert seit: 28. Jun 2004
Ort: Rotenburg (Wümme)
102 Beiträge
 
Delphi 2005 Enterprise
 
#1

Neue Spalte in einer FoxPro-Tabelle erzeugen

  Alt 7. Dez 2005, 10:08
Datenbank: BDE • Zugriff über: BDE
Hallo,
ich füge mit folgenden Anweisungen einer FoxPro-Tabelle eine Spalte hinzu:

AQuery := TQuery.Create(nil);
AQuery.SQL.Clear;
AQuery.SQL.Add('ALTER TABLE "_MP.DBF" ADD OID INTEGER');
AQUERY.EXECSQL;
AQUERY.Close;

Wenn ich danach die Datei mit Visual-FoxPro öffnen möchte, bekomme ich die Meldung, daß dies keine Tabelle ist !!
Mit ACCESS2003 läßt sich die Tabelle importieren und auch ansehen !

Was mach ich falsch ?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Neue Spalte in einer FoxPro-Tabelle erzeugen

  Alt 7. Dez 2005, 10:41
Hallo,

eventuell ist deine Tabelle im Header als FoxPro-Tabelle markiert. Dieses Flag hat die BDE nach dem Update des Headers gelöscht, da sie Tabellen nach den Spezifikationen von Ashton & Tate / Borland verarbeitet. Das ist beim Lesen kein Hindernis, aber beim Schreiben schon. Nur eine Vermutung...

Grüße vom marabu
  Mit Zitat antworten Zitat
WoTo

Registriert seit: 28. Jun 2004
Ort: Rotenburg (Wümme)
102 Beiträge
 
Delphi 2005 Enterprise
 
#3

Re: Neue Spalte in einer FoxPro-Tabelle erzeugen

  Alt 7. Dez 2005, 10:50
Hallo,
vielen Dank für deine Antwort.

Wie kann ich den Header wieder herstellen ?

MfG
WoTo
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Neue Spalte in einer FoxPro-Tabelle erzeugen

  Alt 7. Dez 2005, 10:57
Du musst den Header analysieren. Hilfreich kann dabei diese Formatbeschreibung sein.

marabu
  Mit Zitat antworten Zitat
WoTo

Registriert seit: 28. Jun 2004
Ort: Rotenburg (Wümme)
102 Beiträge
 
Delphi 2005 Enterprise
 
#5

Re: Neue Spalte in einer FoxPro-Tabelle erzeugen

  Alt 7. Dez 2005, 12:53
Ich habe den Header analysiert und festgestellt, daß die BDE den Header vollkommen verändert und als 1. Spalte die Spalte "japan" erstellt (Byte 20H).
Aufgrund dessen vermute ich, daß irgendetwas mit dem Ländercode nicht stimmt. Ich habe dann mit TQuery.Locate ein wenig experimentiert aber leider kein Erfolg gehabt.

Ich habe jetzt eine Notlösung gefunden, die die Original-Tabelle kopiert, da andere Programme die Original-Tabelle nutzen. Mein Programm arbeitet dann mit der Kopie, sodaß das Original nicht verändert wird. Die BDE hat mit dem falschen Header keine Probleme.

Dein Hinweis mit dem Header hat mir sehr geholfen. Interessant wäre es allerdings, zu wissen, wieso der Header in dem Maße durch die BDE verändert wird.

MfG
WoTo
  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 08:22 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