View erstellen - SQL Fehler

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

herhag
**
Beiträge: 27
Registriert: Di, 19.04.2016 19:14
Wohnort: Nbg.
Kontaktdaten:

View erstellen - SQL Fehler

Beitrag von herhag » Mo, 30.05.2016 13:10

Hallo in´s Forum.

Beim erstellen einer Tabellenansicht (View)kommt es beim speichern zu einem SQL-Fehler.
Da die VIEW-Abfrage aus der DB-Adressen.odb mit Makros stammt, bin ich etwas ratlos an was dies liegen könnte.

Nicht anlegen kann ich die Sicht sowohl mit portabler Version "LibreOffice" als auch mit der Normalen 5.1.2.2

Einzelheiten sind dem beigefügtem Bild zu entnehmen.
view.jpg
view.jpg (58.84 KiB) 3725 mal betrachtet
Danke für die Hilfe. 8)

Herbert
Danke für die Hilfe. :D 8)
==============================
Libre Office 5.1.1.3
PortableVersion
Windows 10
64 Bit

Toxitom
********
Beiträge: 3505
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Re: View erstellen - SQL Fehler

Beitrag von Toxitom » Mo, 30.05.2016 18:30

Hey Herbert,

was nutzt Du den für ein DBMS? Die interne HSQLDB?
Was für ein Betriebssystem und welche Version LibO (32bit oder 64bit) ?

Solltest du die interne HSQLDB nutzen, so ist mir nicht bekannt, dass sie die Union Befehle unterstützt noch die verkürzte Schreibweise für das concate (hier als ||) dargestellt.

Eine MySQL bzw. Maria-DB Datenbank mit entsprechenden Treibern (ODBC bzw auch der native) könnte das möglicherweise bewerkstelligen - aber auch da bin ich mir nicht sicher.

In dem Fall bleibt Dir nur eins: Schritt für Schritt testen, ob die verwendeten SQL Befehle sowohl über die Treiber korrekt interpretiert und weitergeleitet werden als auch das DBMS diese versteht und implementiert hat.

VG
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic

herhag
**
Beiträge: 27
Registriert: Di, 19.04.2016 19:14
Wohnort: Nbg.
Kontaktdaten:

Re: View erstellen - SQL Fehler

Beitrag von herhag » Mo, 30.05.2016 19:02

Hallo Toxitom,

folgende Version benütze ich:

Die interne HSQLDB!
Windows 10 Pro, 64 Bit-System, 8 G RAM,
version_libre.jpg
version_libre.jpg (45.33 KiB) 3699 mal betrachtet
Dies ist eine PortableVersion, die habe ich auf einem USB-Stick installiert.
Aber, es funktioniert auch unter Windows Vista nicht.
Nicht auf Stick.

Die Sicht stammt aus einer Vorlagen-Datei (Robert Großkopf, denke ich. Weil, der Name in dem Beispiel auftaucht.), mit Makros.
Siehe Anhang.

Dieses Beispiel will ich für meine Zwecke abändern und daraus lernen.
Die enthaltenen Module und den enthaltenen Code, konnte ich schon kopieren und in meine Test-DB einpflegen.
Das funktioniert, nur die View kann ich nicht erstellen.

Wie könnte ich diese Sicht abändern, dass diese funzt?
Wäre super, könntest du mir Hilfestellung geben.

Danke.

Herbert
Dateianhänge
Adressen.odb
(23.61 KiB) 75-mal heruntergeladen
Danke für die Hilfe. :D 8)
==============================
Libre Office 5.1.1.3
PortableVersion
Windows 10
64 Bit

F3K Total
********
Beiträge: 3270
Registriert: Mo, 28.02.2011 17:49

Re: View erstellen - SQL Fehler

Beitrag von F3K Total » Mo, 30.05.2016 20:19

Hallo,
die interne HSQL-DB unterstützt UNION SELECT im direkten SQL-Mode, siehe Bild.
view.jpg
view.jpg (62.46 KiB) 3681 mal betrachtet
Gruß R

Gast

Re: View erstellen - SQL Fehler

Beitrag von Gast » Mo, 30.05.2016 20:33

Hallo.

Ja, ist mir bekannt.
Habe ich mit INSERT oder UPDATE getestet.

Nur, was nützt mir dies bei meinem Problem, das erstellen einer Sicht mit den benötigten SQL-Anweisungen?
Die Sicht wird, denke ich doch, für ein Makro benötigt, dass die Filter-Listbox befüllt.

Herbert

RobertG
*******
Beiträge: 1735
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: View erstellen - SQL Fehler

Beitrag von RobertG » Mo, 30.05.2016 21:01

Hallo Herbert,

schau auf die Abbildung, die F3K Total geschickt hat. Du musst in dem Fenster für die Abfrage/Ansicht den Code mit direktem SQL ausführen. Das geht nicht über die Verarbeitung mit der grafischen Benutzeroberfläche.

Gruß

Robert

Gast

Re: View erstellen - SQL Fehler

Beitrag von Gast » Mo, 30.05.2016 21:49

Hallo Robert,

Ok, ist klar.
Aber, nochmal, wie kann ich die Sicht unter dem Namen "Filter_Name_Ansicht" speichern?
Das funktioniert ja nicht.

Im o.a. Anhang, ist die View bei den Tabellen gespeichert.

Danke.

F3K Total
********
Beiträge: 3270
Registriert: Mo, 28.02.2011 17:49

Re: View erstellen - SQL Fehler

Beitrag von F3K Total » Di, 31.05.2016 20:06

Hallo Herbert,
Wenn ich Deine Datenbankdatei Adressen.odb öffne, funktionieren beide Dinge:
  • Die Ansicht Name_Filter_Ansicht

    Code: Alles auswählen

    SELECT "Anzeige", "ID" FROM "Filter_aus" AS "Filter_Aus" UNION ALL SELECT "Nachname" || ', ' || "Vorname" AS "Anzeige", "ID" AS "ID" FROM "Person" AS "Person" ORDER BY "Anzeige"
    im Bereich der Tabellen, ist normal für Ansichten
  • Die Abfrage Name_Filter im Bereich der Abfragen.

    Code: Alles auswählen

    SELECT "Anzeige", "ID" FROM "Filter_aus" AS "Filter_Aus" UNION ALL SELECT "Nachname" || ', ' || "Vorname" AS "Anzeige", "ID" AS "ID" FROM "Person" AS "Person" ORDER BY "Anzeige"
Beide beinhalten den gleichen SQL-Code und liefern folgendes Ergebnis:

Code: Alles auswählen

Anzeige                 ID
Alle
Denk-Hager, Margit      21
Großkopf, Robert         0
Gut, Tunicht             5
Hager, Herbert           7
Hastnicht, Moni          3
Milinda, Mirina          1
Muster, Hans            24
Springinsfeld, Kerstin   4
Springsinsfeld, Karl     6
Tunichtgut, Heinz        2
Ich verstehe Dein Problem nicht.

Getestet mit LibreOffice 5.1.3
Gruß R

herhag
**
Beiträge: 27
Registriert: Di, 19.04.2016 19:14
Wohnort: Nbg.
Kontaktdaten:

Re: View erstellen - SQL Fehler

Beitrag von herhag » Di, 31.05.2016 20:16

Hallo Robert,

das Problem ist nicht die Funktion der Sicht.

Das Problem ist das Speichern der Sicht mit der genannten SQL-Anweisung.

Also,ich erstelle ein Sicht in der SQL-Ansicht.
Füge die SQL-Anweisung ein.
Will die Sicht untern einem bestimmten Namen speichern.
Dann erscheint die Fehlermeldung.

Hoffe, dass es nun verständlich ist.
:)
Danke für die Hilfe. :D 8)
==============================
Libre Office 5.1.1.3
PortableVersion
Windows 10
64 Bit

F3K Total
********
Beiträge: 3270
Registriert: Mo, 28.02.2011 17:49

Re: View erstellen - SQL Fehler

Beitrag von F3K Total » Di, 31.05.2016 20:29

Also,
ein Name einer Ansicht, Tabelle oder Abfrage ist in einer .odb nur einmal verwendbar, zweimal geht nicht.
Wenn du die View (Ansicht) mit dem UNION SELECT Befehl speichern möchtest, mußt du den direkten SQL-Mode, wie in meinem Bild markiert, einschalten!
Gruß F3K Total alias R nicht Robert.

herhag
**
Beiträge: 27
Registriert: Di, 19.04.2016 19:14
Wohnort: Nbg.
Kontaktdaten:

Re: View erstellen - SQL Fehler

Beitrag von herhag » Di, 31.05.2016 20:42

Hallo F3K Total alias R,

danke. 8) :) :)

Das ist ´ne klare Erklärung.
Können den Thread schliessen.

Danke nochmals und Gruß

Herbert
Danke für die Hilfe. :D 8)
==============================
Libre Office 5.1.1.3
PortableVersion
Windows 10
64 Bit

Antworten