Hallo zusammen,
ich habe folgendes Problem:
Mit "GRANT" und "SET PASSWORD" kann ich in einer HSQLDB einem USER eine Rolle und ein Passwort zuordnen.
Dazu muss ich "DBA" sein.
Wenn ich die Änderungen durchgeführt habe, soll der USER im geöffneten WRITER Formular angemeldet werden, und zwar mit seiner Rolle, nicht als DBA
Ich stelle mir vor, dass ich dazu die Datenbankverbindung einmal kappen, und dann wieder neu verbinden muß.
Hat jemand eine Idee, wie dass in Basic geht?
beste Grüße von Rik
Writer-Formular Datenbankverbindung wechseln
Moderator: Moderatoren
Writer-Formular Datenbankverbindung wechseln
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Writer-Formular Datenbankverbindung wechseln
Da ich keinen entsprechenden Testaufbau habe, hier einmal ein Schuss ins Blaue. Müsste natürlich von der internen Datenbank und *.odb auf Deine Variante umgesetzt werden. Prinzipiell gibt es aber die Möglichkeit, die Verbindung zu schließen
Bei mir lässt sich in Base direkt die Verbindung schließen und mit einer neuen Kontaktsuche wieder öffnen.
Gruß
Robert
Code: Alles auswählen
oDatenquelle = ThisComponent.Parent.CurrentController
oVerbindung = oDatenquelle.ActiveConnection()
oVerbindung.close()
If NOT (oDatenquelle.isConnected()) THEN
oDatenquelle.connect()
END IF
Gruß
Robert
Re: Writer-Formular Datenbankverbindung wechseln
Hallo Robert,
ich war eine Woche nicht zuhause, daher antworte ich erst jetzt.
Deine Methode kannte ich, die funktioniert in einer .odb Datei, ich suchte eine Lösung für ein Writer Formular und habe sie inzwischen gefunden:
Vielen Dank,
beste Grüße von Rik
ich war eine Woche nicht zuhause, daher antworte ich erst jetzt.
Deine Methode kannte ich, die funktioniert in einer .odb Datei, ich suchte eine Lösung für ein Writer Formular und habe sie inzwischen gefunden:
Code: Alles auswählen
oform = thiscomponent.drawpage.forms.MainForm
Verbindung = oform.activeconnection
odatasource = Verbindung.parent
ssql = "ALTER USER12 SET PASSWORD 'meinPasswort'"
SQL_Statement.executeupdate(ssql)
ssql = "GRANT USERROLE TO USER12"
SQL_Statement.executeupdate(ssql)
ssql = "REVOKE DBA FROM USER12"
SQL_Statement.executeupdate(ssql)
Verbindung.close
Verbindung = oDataSource.getConnection ("USER12", "meinPasswort")
oform.activeconnection = Verbindung '... und hier wird die Verbindung wieder hergestellt
beste Grüße von Rik
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Writer-Formular Datenbankverbindung wechseln
Hallo zusammen,
Kommando zurück!
Zwar kann ich mit dem o.a. Befehl die Verbindung meines Hauptformulares zur DB wieder herstellen, aber ich habe Probleme mit dem Subformular.
Es ist über zwei Parameter (Foreign Keys) an das Hauptformular gebunden.
Trotz "movetoinsertrow" kommt eine Fehlermeldung beim Eingeben eines neuen Datensatzes "Attempt to insert null into a non nullable column".
Ich habe herausgefunden, dass die Parameter nicht zur Verfügung stehen, MRI zeigt 0.
Trotz "subform.load"
Wie schaffe ich es, das nicht nur das Hauptformular, sondern auch das Unterformular nach dem Schliessen und erneutem Öffnen der Verbindung zur Datenbank korrekt verknüpft geladen wird?
Hat da jemand einen Tipp für mich?
Beste Grüße von Rik
Kommando zurück!
Zwar kann ich mit dem o.a. Befehl die Verbindung meines Hauptformulares zur DB wieder herstellen, aber ich habe Probleme mit dem Subformular.
Es ist über zwei Parameter (Foreign Keys) an das Hauptformular gebunden.
Trotz "movetoinsertrow" kommt eine Fehlermeldung beim Eingeben eines neuen Datensatzes "Attempt to insert null into a non nullable column".
Ich habe herausgefunden, dass die Parameter nicht zur Verfügung stehen, MRI zeigt 0.
Trotz "subform.load"
Wie schaffe ich es, das nicht nur das Hauptformular, sondern auch das Unterformular nach dem Schliessen und erneutem Öffnen der Verbindung zur Datenbank korrekt verknüpft geladen wird?
Hat da jemand einen Tipp für mich?
Beste Grüße von Rik
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO