Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
Delphi 7 Enterprise
|
AW: Wie bekomme ich einen performanten Firebird?
27. Apr 2014, 13:25
Untenstehend die DDL für die betreffende Tabelle. Die Indizes waren beim letzten Import komplett deaktiviert mit ALTER INDEX <name> INACTIVE. In der usprünglichen DB gibt es keine PK und keine RI. Grosse Integer werden durch DOUBLE dargestellt, da die ursprünglich verwendeten DB keine BIGINT bzw. INT64 unterstützen - nicht lachen, das System ist in den Ursprüngen knapp 30 Jahre alt.
Code:
CREATE TABLE BUCHUNG
(
"ID" DOUBLE PRECISION,
"VORG_NR" DOUBLE PRECISION,
"LFD_BNR" DOUBLE PRECISION,
"MAND_ID" DOUBLE PRECISION,
"ART_ID" DOUBLE PRECISION,
"PAL_NR" CHAR ( 10 ),
"ZUG_NR" CHAR ( 20 ),
"ZUG_POS" INTEGER,
"ABG_NR" CHAR ( 20 ),
"ABG_POS" INTEGER,
"LIEFER_ID" DOUBLE PRECISION,
"KD_ID" DOUBLE PRECISION,
"BELEG_ID" DOUBLE PRECISION,
"BUCH_DAT" DATE,
"ZUG_DAT" TIMESTAMP,
"MENGE" DOUBLE PRECISION,
"PLATZ_ID" DOUBLE PRECISION,
"DATUM" DATE,
"ZEIT" CHAR ( 8 ),
"VORGANG" CHAR ( 3 ),
"AUTO_VORG" CHAR ( 3 ),
"ART" CHAR ( 4 ),
"USER" CHAR ( 8 ),
"STATUS" CHAR ( 4 )
);
CREATE INDEX "BUCHUNG_ID" ON BUCHUNG (ID);
CREATE INDEX "BUCHUNG_MAND_ID" ON BUCHUNG (MAND_ID, ART_ID, DATUM, ZEIT);
CREATE INDEX "BUCHUNG_ART_ID" ON BUCHUNG (ART_ID, MAND_ID, DATUM, ZEIT);
CREATE INDEX "BUCHUNG_ZUG_NR" ON BUCHUNG (ZUG_NR, MAND_ID, ART_ID);
CREATE INDEX "VORG_NR" ON BUCHUNG (VORG_NR);
CREATE INDEX "BUCHUNG_PLATZ_ID" ON BUCHUNG (PLATZ_ID);
CREATE INDEX "VORGANG" ON BUCHUNG (VORGANG);
CREATE INDEX "BUCHUNG_STATUS" ON BUCHUNG (STATUS);
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
|
|
Zitat
|