Dateneingabe in Postgres mit base als frontend

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

ThomasD
Beiträge: 3
Registriert: Mi, 04.04.2012 17:38

Dateneingabe in Postgres mit base als frontend

Beitrag von ThomasD »

Hallo allerseits

Mein System:
Suse 12.1
KDE 4.x
Libre office, aktuell (erst vor 2 Monaten installiert)
Postgres 9.0.x

Ich möchte Daten in eine Postgresdatenbank mit base als frontend eingeben. Unter postgres ist die Dateneingabe möglich (mit pgpAdmin oder per SQL).
Ich verbinde mich auch erfolgreich von base nach Postgres, kann dort in der entsprechenden Datenbank Tabellen anlegen und diese dann mit anderen Administrationstools weiterbearbeiten. Die Verbindung und wohl auch die Benutzerrechte sollten also nicht das Problem sein.

Allerdings kann ich in die Tabellen keine Daten eingeben, in Base ist der Menüeintrag Datensatz eingeben (oder so ähnlich) deaktiviert. Habe dann eine Testtabelle erstellt (mit pgAdmin), die nur einen Primärschlüssel enthält um Fehlerquellen soweit möglich auszuschließen. Auch diese Tabelle kann ich nicht ändern. Weder neuen Datensatz anfügen noch bestehende Einträge ändern (owohl keine joins bestehen, was ja eventuell Probleme machen könnte). Habe schon mehrere Benutzer mit unterschiedlichen Rechten probiert, nichts funktioniert.

Hat irgendwer eine Idee, woran das liegen könnte? Muß der Primärschlüssel in base ein bestimmtes Format haben? Muß bei der Verbindungserstellung irgendwas wie "Dateneingabe ermöglichen" aktiviert werden?

Gruß Thomas

PS: Schreibe diesen Beitrag vom Büro aus und habe da einen anderen Rechner, deswegen die ungenauen Angaben zu Versionen und Menüeinträgen.
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Dateneingabe in Postgres mit base als frontend

Beitrag von komma4 »

Willkommen im Forum.

Welchen Treiber setzt Du ein: ODBC oder JDBC?

Wo ist der Menueintrag deaktiviert?
Siehst Du Tabellen(-inhalte)? Kannst Du auch in einer Tabellenansicht nichts eingeben/ändern?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
ThomasD
Beiträge: 3
Registriert: Mi, 04.04.2012 17:38

Re: Dateneingabe in Postgres mit base als frontend

Beitrag von ThomasD »

Hallo
Welchen Treiber setzt Du ein: ODBC oder JDBC
Den postgresql Treiber, der mit der 3.4.2 Version von Libreoffice enthalten ist.
Wo ist der Menueintrag deaktiviert?
Der Menüeintrag ist im Tabellenmenü (wenn ich die Tabelle offen habe) bei Einfügen->Datensatz deaktiviert ("Datensatz" grau)
Siehst Du Tabellen(-inhalte)? Kannst Du auch in einer Tabellenansicht nichts eingeben/ändern?
Die Tabelleninhalte sehe ich, kann aber auch in der Tabellenansicht nichts eingeben oder ändern.

Habe es jetzt schon mit Text und Integerspalte versucht, immer das gleiche. Wenn ich mit pgAdmin eingebe, wird die Eingabe auch in base angezeigt. Ist das eventuell ein Problem verschiedener SQL-Syntax? Habe Postgres 9.1.1 laufen.

Danke für Deine Nachfrage

Thomas
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Dateneingabe in Postgres mit base als frontend

Beitrag von komma4 »

ThomasD hat geschrieben:Ist das eventuell ein Problem verschiedener SQL-Syntax?
Eher nicht - sondern ein Treiberproblem (-einstellung).

Hast Du einen Haken (nicht standardmässig: Minus) bei Bearbeiten>Datenbank>Erweiterte Einstellungen...>Besondere Einstellungen>Unterstützt Primärschlüssel


Dann klappt das bei mir (LO 3.4.4 vom Projekt, JDBC-Treiber)
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
ThomasD
Beiträge: 3
Registriert: Mi, 04.04.2012 17:38

Re: Dateneingabe in Postgres mit base als frontend

Beitrag von ThomasD »

Hallo

Kann den Haken nicht setzen, weil der Menüpunkt
  • Bearbeiten>Datenbank>Erweiterte Einstellungen
nicht aktiviert ist. Das geht aber, wenn ich probeweise JDBC bei Datenbankverbindung angebe. Scheint also wirklich ein Treiberproblem zu sein. Werde nach Ostern berichten, mach jetzt erst mal 4 Tage Ferien.

Frohe Ostern an alle

Nachtrag: Hat folgendermaßen funktioniert:
- JDBC treiber runterladen (http://jdbc.postgresql.org/)
- archiv in usr/share/postgresql (Meine eigene Idee um aufgeräumt zu bleiben)
- In LibreOffice unter Extras/Optionen/LibreOffice/Java den "ClassPath" auf das Archiv setzen (geht einfach über das Menü)
- In einer LibreOffice Base Datei eine Verbindung zu Postgresdatenbank erzeugen. Dazu habe ich folgende Einstellungen gewählt:
+ Jdbc Treiberklasse: org.postgresql.Driver
+ Datenquellen-URL: jdbc:postgresql://localhost/meinedb (wobei "jdbc:" voreingestellt ist, nicht nochmal hinschreiben) Hier gibt es auch andere Möglichkeiten:
jdbc:postgresql:meinedb (bei Installation der Datenbank auf lokalem Rechner) oder jdbc:postgresql://host:port/meinedb
Bisher funktioniert das Ganze, allerdings habe ich nur einfache Tabellenstrukturen und Feldtypen (als Primärschlüssel nur Integer) getestet. Mal sehen.

Gruß Thomas
Antworten