AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DBF Spaltennamen ändern

Ein Thema von Kondzie · begonnen am 7. Aug 2019 · letzter Beitrag vom 8. Aug 2019
Antwort Antwort
exilant

Registriert seit: 28. Jul 2006
134 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: DBF Spaltennamen ändern

  Alt 8. Aug 2019, 08:33
Der Header von DBFs ist trivial. Kannst Du mit jedem Hex-Editor patchen.


DBF Header Structure
Anything, carried to the extreme, becomes insanity. (Exilant)
  Mit Zitat antworten Zitat
Kondzie

Registriert seit: 7. Aug 2019
5 Beiträge
 
#2

AW: DBF Spaltennamen ändern

  Alt 8. Aug 2019, 08:43
Zitat:
Der Fehler tritt auf, wenn ich die nächste DBF-Tabelle in die DB-Tabelle lade.
Also hier:
markieren
Code:
UniTableSource.active:=false;
UniTableSource.TableName:=stable;
UniTableSource.active:=true;
Das stimmt nicht! Der Fehler tritt auf, wenn ich Versuche die nächste Tabelle zu löschen, also hier:

Code:
UniQuery.SQL.Text:='DROP TABLE '+stable;
UniQuery.ExecSQL;

Der ganze Sinn hinter der Sache ist ja auch, dass ich von DBASE loskommen möchte. Da es aber in manchen Tabellen unüberlegte Spaltennamen gibt, wie "DATE/TIME/TYPE" etc., fällt das Konvertieren nach z.B. SQL Server schwer. Deswegen muss ich das erstmal ändern.


Anscheinend gebe ich irgendeine Instanz nicht ordentlich wieder frei. Aber dafür fehlen mir die nötigen Kenntnisse über Delphi, da ich ein "Neuling" bin.
Könnt Ihr was in meiner Funktion erkennen, was nicht ordentlich freigegeben ist oder dergleichen?

Geändert von Kondzie ( 8. Aug 2019 um 09:03 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: DBF Spaltennamen ändern

  Alt 8. Aug 2019, 09:03
Hallo,
Zitat:
fällt das Konvertieren nach z.B. SQL Server schwer
Nein, tut es nicht.

Ich hatte mir damals beim Umstieg von Paradox auf Interbase
ein eigenes Copy-Programm geschrieben.
Ich kannte ja die Tabellen mit den "bösen" Feldnamen
und habe die entsprechend berücksichtigt.


Zitat:
Nachtrag: RestructureTable gibt es in leider nicht. Müsste man dann selber umsetzen.
Eben deshalb die alte Version TDbf benutzen.
Heiko

Geändert von hoika ( 8. Aug 2019 um 09:06 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: DBF Spaltennamen ändern

  Alt 8. Aug 2019, 09:09
Hallo,
Zitat:
Anscheinend gebe ich irgendeine Instanz nicht ordentlich wieder frei.
es kann aber auch sein, dass Du das aktuelle Daten-Verzeichnis irgendwie abänderst,
dann findet das Programm die Tabelle wirklich nicht
GetCurrentDir
http://www.delphibasics.co.uk/RTL.as...=GetCurrentDir
Heiko
  Mit Zitat antworten Zitat
Kondzie

Registriert seit: 7. Aug 2019
5 Beiträge
 
#5

AW: DBF Spaltennamen ändern

  Alt 8. Aug 2019, 09:17
Zitat:
es kann aber auch sein, dass Du das aktuelle Daten-Verzeichnis irgendwie abänderst,
dann findet das Programm die Tabelle wirklich nicht
Naja ich Lösche und Erstelle neue Tabellen, vielleicht fällt das unter abändern?

Aber ich habe gerade alles versucht um die Instanzen zu schließen. Ich habe jetzt zwischendrin meine Connection gelöscht und neu verbunden, um ganz sicher zu gehen.
Leider funktioniert es auch so nicht.
Ich verstehe einfach nicht, warum die Tabelle, die ich ja noch gar nicht verwendet habe, gesperrt ist.
  Mit Zitat antworten Zitat
Kondzie

Registriert seit: 7. Aug 2019
5 Beiträge
 
#6

AW: DBF Spaltennamen ändern

  Alt 8. Aug 2019, 09:31
Ich habe es gefunden !!!

Der Fehler bestand darin, dass meine DB-Tabelle die DBF-Tabelle gesperrt hat.
Das heißt, ich habe einfach vor dem "Drop" meine DB-Tabelle geschlossen und dann ging es.

Was mich nur wundert ist, dass es beim ersten Durchlauf auch funktioniert hat, obwohl meine DB-Tabelle noch geöffnet war?

Aber ich bedanke mich trotzdem für Eure Bemühungen!

Grüße Kondzie
  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 20:35 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