[GELÖST] Migration: HSQLDB zu MySQL

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

geimist
****
Beiträge: 191
Registriert: Fr, 15.02.2008 16:10

[GELÖST] Migration: HSQLDB zu MySQL

Beitrag von geimist »

Hallo Leute,

ich versuche gerade eine Base-Datenbank unter Nutzung der internen HSQLDB auf eine MySQL-DB zu migrieren, d.h. ich lagere lediglich die Tabellen aus und muss natürlich noch ein paar Anpassungen vornehmen.

Im Großen und Ganzen funktioniert es auch schon gut, aber nicht mit allem.
Es geht um eine Verleihdatenbank, und folgender Code hat in der HSQLDB die Zeitdifferenz zwischen 2 Rückgaben errechnet (Danke noch mal an Barlee - hier geht es zum Beitrag). Mit der MySQLDB kommt es zu dem Fehler: "Every derived table must have its own alias" und wenn ich das richtig verstanden habe, so fehlt mir noch ein Tabellenalias - aber ich weiß nicht wo.

Hier der Code:

Code: Alles auswählen

SELECT AVG ("DIFF_MON") FROM ( SELECT ( SELECT COUNT( * ) FROM "LOG_VIEW" AS "X" WHERE "LOG_VIEW"."rueckgabe" > "X"."rueckgabe" AND "LOG_VIEW"."Artikel" = "X"."Artikel" ) + 1 AS "LFD", "LOG_VIEW".*, ( DATEDIFF( ( SELECT MAX( "rueckgabe" ) FROM "LOG_VIEW" AS "X" WHERE "LOG_VIEW"."rueckgabe" > "X"."rueckgabe" AND "LOG_VIEW"."Artikel" = "X"."Artikel" ), "rueckgabe" ) / 30.5 ) AS "DIFF_MON" FROM "LOG_VIEW" WHERE "rueckgabe" >= {D '1' }) Where "DIFF_MON" IS NOT NULL
Danke schon mal
Zuletzt geändert von geimist am Fr, 12.02.2010 14:20, insgesamt 1-mal geändert.
Gruß
Stephan

LibreOffice 5.3 - MAC OS/X 10.11
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: Migration: HSQLDB zu MySQL

Beitrag von Barlee »

Hallo Stephan,

mit ALIASEN an folgenden Stellen solltest Du nochmal probieren.

SELECT AVG ("t2"."DIFF_MON") AS "Mittelwert"
FROM
(
SELECT
( SELECT COUNT( * ) AS "Anz"
FROM "LOG_VIEW" AS "X"
WHERE "LOG_VIEW"."rueckgabe" > "X"."rueckgabe" AND "LOG_VIEW"."Artikel" = "X"."Artikel" ) + 1 AS "LFD",
"LOG_VIEW".*,
( DATEDIFF( ( SELECT MAX( "rueckgabe" ) AS "Max_Rueck" FROM "LOG_VIEW" AS "X"
WHERE "LOG_VIEW"."rueckgabe" > "X"."rueckgabe" AND "LOG_VIEW"."Artikel" = "X"."Artikel" ), "rueckgabe" ) / 30.5 ) AS "DIFF_MON"
FROM "LOG_VIEW" WHERE "rueckgabe" >= {D '1' }
) AS "t2"
Where "t2"."DIFF_MON" IS NOT NULL

Gruß Barlee
geimist
****
Beiträge: 191
Registriert: Fr, 15.02.2008 16:10

Re: Migration: HSQLDB zu MySQL

Beitrag von geimist »

Hallo Barlee,

entschuldige bitte meine späte Antwort. Deine Hilfe war goldrichtig.

Vielen Dank
Gruß
Stephan

LibreOffice 5.3 - MAC OS/X 10.11
Antworten