![]() |
Datenbank: Firebird / Dbase • Zugriff über: tibobjects / tdbf
DatabaseName je nach computer vergeben
Hallo Forum,
Ich schreibe ein Transfert-Program das alle meine DBF's in eine Firebird-Database umwandeln soll. Dabei werden die Daten nicht eins zu eins kopiert sondern gleichzeitig auch Umstrukturiert. Ich entwickle im moment parallel im Betrieb und Zuhause. Im Betrieb steht die Firebird DB auf meinem Server (IP:192.168.47.150) Zu Hause spreche ich die gleiche DB (Kopie) über die IP:127.0.0.1 an. Mein Programm soll selbstständig feststellen auf welchem Computer ich gerade programmiere und dementsprechend die Namensanpassungen vornehmen. Jetzt weiss ich leider nicht wie ich das am besten bewerkstelligen soll. M.f.G. Kunsch Alain |
Re: DatabaseName je nach computer vergeben
mach Dir doch eine Datei, wo Du die Zuordnung hineinschreibst.
Rechnername dbName Grüße Klaus |
Re: DatabaseName je nach computer vergeben
So wie ich das sehe, hast Du dir die Antwort wschon selbst gegeben.
Ermittle die IP dann weißt Du wo Du bist, oder schreib den Servernamen in eine INI Datei und ändere gegebenenfalls den Namen. |
Re: DatabaseName je nach computer vergeben
Moyen,
Du kannst auch über den Rechnernamen gehen. Das ist z.B. sinnvoll, wenn bei Euch in der Firma DHCP eingesetzt wird. Dann hat Dein Arbeitsplatz nämlich öfter mal eine andere IP. Beispiel zur Ermittlung:
Delphi-Quellcode:
Aber mal was ganz anderes: Wenn Du ein Clipper-Programm umstellen willst, warum verwendest Du dann nicht den Advantage Database Server? Damit kannst Du sogar parallel von Clipper und Delphi-Anwendungen auf die alten Daten zugreifen. Und wenn das Delphi Teil fertig ist, kannst Du die Clipper-Anwendung abschalten und dann auch die Daten in das proprietäre ADT Format umwandeln bzw. auch mit ADD (Dictionary, echte Datenbank). Für die Umstellung von XBase Anwendungen eindeutig die beste Lösung!
//------------------------------------------------------------------------
function computername(): string ; //------------------------------------------------------------------------ // Ermittelt den Computernamen //------------------------------------------------------------------------ var buffer : array[0..255] of char; buflen : dword; begin buflen := 256; windows.GetComputerName(buffer,buflen); result := buffer; end; |
Re: DatabaseName je nach computer vergeben
Zitat:
|
Re: DatabaseName je nach computer vergeben
Ist aber auch immer ein Frage der Praxis. U.U. soll in der neuen Anwendung etwas realisiert werden, was mit DOS nicht möglich wäre und vielleicht auch ziemlich schnell. Wenn man dann nur begrenzte Resourcen hat, ist es unmöglich die ganze Anwendung fehlerfrei neu zu programmieren und noch die gewünschte Zusatzfunktionalität zu implementieren.
|
Re: DatabaseName je nach computer vergeben
Zitat:
|
Re: DatabaseName je nach computer vergeben
Hallo,
Bedanke mich für die Antworten, die Anstöße haben mir weiter geholfen. Zitat:
Ich habe lange in Foren herum gelesen und bin zum subjektivem Schluss gekommen dass Firebird für mich die richtige Wahl ist. Die Daten einfach übernehmen scheint mir nicht der richtige weg. Die aktuelle Struktur ist etwa 20 Jahre alt und kommt noch von Zeiten wo HD-Platz sehr knapp war. Im laufe der Zeit wurden Felder nachgeflickt und Notlösungen programmiert um den neueren Anforderungen zu entsprechen. (Und wird zum Teil heute noch immer so gemacht.) Ich befürchte jedoch dass DOS von M$ keine 100 Jahre mehr unterstützt wird und deswegen die ganze Arbeit die Anwendung neu zu schreiben. Und wenn schon neu schreiben dann solls auch den neuen Anforderungen gerecht werden. Zitat:
Das alte Programm funktioniert ja noch, programmieren ist halt ein kleines Hobby und fertig Produkte, naja wir sind halt verwöhnt. M.f.G. Kunsch Alain |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:17 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