Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3 (https://www.delphipraxis.net/39347-interbase-5-x-auf-6-5-dialect-1-auf-dialect-3-a.html)

Joerg.Kohrt 1. Feb 2005 12:31


Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Hallo,
beim Wechsel von Delphi4 auf Delphi 7 war ich wohl mit dem Interbase-Wechsel zu unvorsichtig.
Nun gibt es große, für mich zurzeit unlösbare Probleme bei der Tabellenbearbeitung dieser DB.
Backup und Restore hat keine positive Auswirkung, vielleicht deshalb, weil die Original-IB5.x-DB nicht mehr besteht.
Kennt jemand ein Konvertierungsprogramm, das mir hier hilft. Bin sehr dankbar für Lösungsvorschläge.

Diese Tabelle kann z. B. nicht geöffnet werden:
CREATE TABLE AMT (
MISCHGUT VARCHAR(10),
KENNUNG VARCHAR(1),
TLG VARCHAR(3),
BEZ VARCHAR(40),
SIEB VARCHAR(10),
KATEGORIE VARCHAR(5),
PRBINDA VARCHAR(1),
PRGRUPPE01A VARCHAR(1),
PRGRUPPE02A VARCHAR(1),
PRGRUPPE03A VARCHAR(1),
PRGRUPPE04A VARCHAR(1),
PRHOHLA VARCHAR(1),
PRSTABA VARCHAR(1),
PRFLIEA VARCHAR(1),
PRERWEA VARCHAR(1),
ANZAHL01 SMALLINT,
PRBINDV01 DOUBLE PRECISION,
PRBINDB01 DOUBLE PRECISION,
PRGRUPPE01V01 DOUBLE PRECISION,
PRGRUPPE01B01 DOUBLE PRECISION,
PRGRUPPE02V01 DOUBLE PRECISION,
PRGRUPPE02B01 DOUBLE PRECISION,
PRGRUPPE03V01 DOUBLE PRECISION,
PRGRUPPE03B01 DOUBLE PRECISION,
PRGRUPPE04V01 DOUBLE PRECISION,
PRGRUPPE04B01 DOUBLE PRECISION,
PRHOHLV01 DOUBLE PRECISION,
PRHOHLB01 DOUBLE PRECISION,
PRSTABV01 DOUBLE PRECISION,
PRSTABB01 DOUBLE PRECISION,
PRFLIEV01 DOUBLE PRECISION,
PRFLIEB01 DOUBLE PRECISION,
PRERWEV01 DOUBLE PRECISION,
PRERWEB01 DOUBLE PRECISION,
ANZAHL02 SMALLINT,
PRBINDV02 DOUBLE PRECISION,
PRBINDB02 DOUBLE PRECISION,
PRGRUPPE01V02 DOUBLE PRECISION,
PRGRUPPE01B02 DOUBLE PRECISION,
PRGRUPPE02V02 DOUBLE PRECISION,
PRGRUPPE02B02 DOUBLE PRECISION,
PRGRUPPE03V02 DOUBLE PRECISION,
PRGRUPPE03B02 DOUBLE PRECISION,
PRGRUPPE04V02 DOUBLE PRECISION,
PRGRUPPE04B02 DOUBLE PRECISION,
PRHOHLV02 DOUBLE PRECISION,
PRHOHLB02 DOUBLE PRECISION,
PRSTABV02 DOUBLE PRECISION,
PRSTABB02 DOUBLE PRECISION,
PRFLIEV02 DOUBLE PRECISION,
PRFLIEB02 DOUBLE PRECISION,
PRERWEV02 DOUBLE PRECISION,
PRERWEB02 DOUBLE PRECISION,
ANZAHL03 SMALLINT,
PRBINDV03 DOUBLE PRECISION,
PRBINDB03 DOUBLE PRECISION,
PRGRUPPE01V03 DOUBLE PRECISION,
PRGRUPPE01B03 DOUBLE PRECISION,
PRGRUPPE02V03 DOUBLE PRECISION,
PRGRUPPE02B03 DOUBLE PRECISION,
PRGRUPPE03V03 DOUBLE PRECISION,
PRGRUPPE03B03 DOUBLE PRECISION,
PRGRUPPE04V03 DOUBLE PRECISION,
PRGRUPPE04B03 DOUBLE PRECISION,
PRHOHLV03 DOUBLE PRECISION,
PRHOHLB03 DOUBLE PRECISION,
PRSTABV03 DOUBLE PRECISION,
PRSTABB03 DOUBLE PRECISION,
PRFLIEV03 DOUBLE PRECISION,
PRFLIEB03 DOUBLE PRECISION,
PRERWEV03 DOUBLE PRECISION,
PRERWEB03 DOUBLE PRECISION,
ANZAHL04 SMALLINT,
PRBINDV04 DOUBLE PRECISION,
PRBINDB04 DOUBLE PRECISION,
PRGRUPPE01V04 DOUBLE PRECISION,
PRGRUPPE01B04 DOUBLE PRECISION,
PRGRUPPE02V04 DOUBLE PRECISION,
PRGRUPPE02B04 DOUBLE PRECISION,
PRGRUPPE03V04 DOUBLE PRECISION,
PRGRUPPE03B04 DOUBLE PRECISION,
PRGRUPPE04V04 DOUBLE PRECISION,
PRGRUPPE04B04 DOUBLE PRECISION,
PRHOHLV04 DOUBLE PRECISION,
PRHOHLB04 DOUBLE PRECISION,
PRSTABV04 DOUBLE PRECISION,
PRSTABB04 DOUBLE PRECISION,
PRFLIEV04 DOUBLE PRECISION,
PRFLIEB04 DOUBLE PRECISION,
PRERWEV04 DOUBLE PRECISION,
PRERWEB04 DOUBLE PRECISION,
ANZAHL05 SMALLINT,
PRBINDV05 DOUBLE PRECISION,
PRBINDB05 DOUBLE PRECISION,
PRGRUPPE01V05 DOUBLE PRECISION,
PRGRUPPE01B05 DOUBLE PRECISION,
PRGRUPPE02V05 DOUBLE PRECISION,
PRGRUPPE02B05 DOUBLE PRECISION,
PRGRUPPE03V05 DOUBLE PRECISION,
PRGRUPPE03B05 DOUBLE PRECISION,
PRGRUPPE04V05 DOUBLE PRECISION,
PRGRUPPE04B05 DOUBLE PRECISION,
PRHOHLV05 DOUBLE PRECISION,
PRHOHLB05 DOUBLE PRECISION,
PRSTABV05 DOUBLE PRECISION,
PRSTABB05 DOUBLE PRECISION,
PRFLIEV05 DOUBLE PRECISION,
PRFLIEB05 DOUBLE PRECISION,
PRERWEV05 DOUBLE PRECISION,
PRERWEB05 DOUBLE PRECISION,
ANZAHL06 SMALLINT,
PRBINDV06 DOUBLE PRECISION,
PRBINDB06 DOUBLE PRECISION,
PRGRUPPE01V06 DOUBLE PRECISION,
PRGRUPPE01B06 DOUBLE PRECISION,
PRGRUPPE02V06 DOUBLE PRECISION,
PRGRUPPE02B06 DOUBLE PRECISION,
PRGRUPPE03V06 DOUBLE PRECISION,
PRGRUPPE03B06 DOUBLE PRECISION,
PRGRUPPE04V06 DOUBLE PRECISION,
PRGRUPPE04B06 DOUBLE PRECISION,
PRHOHLV06 DOUBLE PRECISION,
PRHOHLB06 DOUBLE PRECISION,
PRSTABV06 DOUBLE PRECISION,
PRSTABB06 DOUBLE PRECISION,
PRFLIEV06 DOUBLE PRECISION,
PRFLIEB06 DOUBLE PRECISION,
PRERWEV06 DOUBLE PRECISION,
PRERWEB06 DOUBLE PRECISION,
SIEBUNTERKORN SMALLINT,
SIEBUEBERKORN SMALLINT,
PR_UNK DOUBLE PRECISION,
PR_UEK DOUBLE PRECISION,
JEDUNK01 VARCHAR(1),
JEDUNK02 VARCHAR(1),
JEDUNK03 VARCHAR(1),
JEDUNK04 VARCHAR(1),
JEDUNK05 VARCHAR(1),
JEDUNK06 VARCHAR(1),
JEDUNK07 VARCHAR(1),
JEDUNK08 VARCHAR(1),
JEDUNK09 VARCHAR(1),
JEDUNK10 VARCHAR(1),
JEDUNK11 VARCHAR(1),
JEDUNK12 VARCHAR(1),
JEDUNK13 VARCHAR(1),
JEDUNK14 VARCHAR(1),
JEDUNK15 VARCHAR(1),
JEDUEK01 VARCHAR(1),
JEDUEK02 VARCHAR(1),
JEDUEK03 VARCHAR(1),
JEDUEK04 VARCHAR(1),
JEDUEK05 VARCHAR(1),
JEDUEK06 VARCHAR(1),
JEDUEK07 VARCHAR(1),
JEDUEK08 VARCHAR(1),
JEDUEK09 VARCHAR(1),
JEDUEK10 VARCHAR(1),
JEDUEK11 VARCHAR(1),
JEDUEK12 VARCHAR(1),
JEDUEK13 VARCHAR(1),
JEDUEK14 VARCHAR(1),
JEDUEK15 VARCHAR(1),
JEDMAXUNK DOUBLE PRECISION,
JEDMAXUEK DOUBLE PRECISION
)

Gruß
Jörg
und nochmals vielen Dank im voraus für Hilfe.

Lemmy 2. Feb 2005 06:15

Re: Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Guten Morgen,

Du hast also absolut keinen Zugriff auf eine Original-V5.x-Datenbankdatei?

Das ist erst mal schlecht.... Du hast aber schon ein Backup/Restore gemacht um von IB5 auf IB6 zu wechseln oder hast Du einfach die GDB "umkopiert"??

Kommst Du auch nicht mit einem Konsolenprogramm an die Tabelle ran um wenigstens die Daten auszulesen?

Hier ist ein Artikel von Paul Beach wie man IB/FB Datenbanken repariert:

http://www.ibphoenix.com/main.nfs?a=ibphoenix&l=;IBPHOENIX.PAGES;NAME='ibp_ db_corr'


Schau DIr auch mal folgende Programme an (ohne Gewehr ;-) )

http://sourceforge.net/projects/ibdbrepair/
http://www.ib-aid.com/
http://www.officerecovery.com/interbase/


Grüße
Lemmy

Duffy 2. Feb 2005 06:33

Re: Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Hallo Joerg,
has Du mal bei der Komponente "TIBDatabase" die Eigenschaft "SQLDialect" auf 1 gesetzt. IMHO sollte es dann dann gehen.

bye
Claus

Joerg.Kohrt 2. Feb 2005 07:35

Re: Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Hallo Lemmy,

vielen Dank für Deine umfassende Antwort.
Ja, ich habe leider nur umkopiert, habe auch eine ganze Zeit keine Probleme gehabt.
Neben dem beschriebenen Problem gibt es eines, das ich nicht in den Griff bekomme.
Ich lege eine Tabelle an und kann dann nicht mit ihr arbeiten (Tabelle unbekannt).
Das ist Standard bis bisher, doch nun muss ich das Programm beenden und dann erst kann ich die Tabelle verwenden......
Vielleicht hast Du ja noch eine Idee und Zeit dazu. Also nochmals danke und besten Gruß
Jörg


Zitat:

Zitat von Lemmy
Guten Morgen,

Du hast also absolut keinen Zugriff auf eine Original-V5.x-Datenbankdatei?

Das ist erst mal schlecht.... Du hast aber schon ein Backup/Restore gemacht um von IB5 auf IB6 zu wechseln oder hast Du einfach die GDB "umkopiert"??



Kommst Du auch nicht mit einem Konsolenprogramm an die Tabelle ran um wenigstens die Daten auszulesen?

Hier ist ein Artikel von Paul Beach wie man IB/FB Datenbanken repariert:

http://www.ibphoenix.com/main.nfs?a=ibphoenix&l=;IBPHOENIX.PAGES;NAME='ibp_ db_corr'


Schau DIr auch mal folgende Programme an (ohne Gewehr ;-) )

http://sourceforge.net/projects/ibdbrepair/
http://www.ib-aid.com/
http://www.officerecovery.com/interbase/


Grüße
Lemmy


Joerg.Kohrt 2. Feb 2005 07:39

Re: Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Hallo Claus,
vielen Dank für Deine Antwort.
Die Einstellung habe ich auch bereits versucht und mit gfix.exe den Dialekt generell weieder auf 1 gesetzt. Trotzdem sind dann die Tabellenstrukturen noch im Dialekt 3 zu sehen (TIMESTAMP...) und ich kann Tabellen nach dem Anlegen erst dann verwenden, nachdem ich das Programm beendet habe und dann wieder neu aufrufe.
Nochmals danke und Gruß
Jörg


Zitat:

Zitat von Duffy
Hallo Joerg,
has Du mal bei der Komponente "TIBDatabase" die Eigenschaft "SQLDialect" auf 1 gesetzt. IMHO sollte es dann dann gehen.

bye
Claus


Lemmy 2. Feb 2005 07:44

Re: Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Hi,

Zitat:

Zitat von Joerg.Kohrt
Ja, ich habe leider nur umkopiert, habe auch eine ganze Zeit keine Probleme gehabt.

Du hast also umkopiert, im Programm (Konsolenprogramm, CLient) auf 3 einfach eingestellt und dann lustig weitergearbeitet... Vielleicht solltest Du in Zukunft erst das eine oder andere lesen bevor Du solche Sachen machst ;-))

Versuch unter allen Umständen ein Backup der Original-DB zu bekommen bzw. eines erstellen zu lassen. Spiele das Backup dann in IB6.1 über ein Restore wieder ein. Beim Restore kannst Du (glaube ich) den Dialect ändern. Wenn das nicht geht, dann leg die Datenbank komplett neu an und verwende DataPump o.ä. um die Daten von der einen in die andere zu bekommen.

Grüße
Lemmy

Duffy 3. Feb 2005 06:12

Re: Interbase 5.X auf 6.5 Dialect 1 auf Dialect 3
 
Hallo Joerg,
erst einmal ein Frage von mir, wie legst Du die Tabellen an? Mit der IBConsole? Wenn ja mußt Du hier, wenn Du Inactive SQL aufgerufen hast unter "Edit -> Options" den Client Dialect auf 1 setzen.
Wenn Du es mit einem Script machst, dann muß die die allerste Zeile "SET SQL DIALECT 1;" lauten.

Vielleicht kommen obige Antworten dem Problem ein wenig näher ...

bye
Claus


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