von StefanOO » So, 20.05.2007 11:15
Hallo Thomas,
danke für die Antwort. Ich vermute einmal, dass du der Autor der zwei Interessanten Bücher über Datenbanken und Makros bist.
Ich nutze die Version 2.2, alles läuft auf einem XP System.
Ich hatte das mit dem UPDATEABLE auch schon probiert. Aber geklappt hat es trotzdem nicht.
Testweise erstellte ich eine neue Datenbank: Diese hat nur die Tabelle Personendaten und darin als Primärschlüssel „Primär“ und „Name“ (als String). Es gibt 2 Einträge 0 : Name 1, 1: Name 2
Hier mal eine Liste der Dinge, die ich probierte und die dazugehörige Fehlermeldung.
sub satzaendern1
dim neueverb, set1 as object
neueverb = getVerbindung
msgbox neueverb.isReadonly ' Antwort False
' Falls die Zeile
' neueverb.setReadOnly(False)
' eingefügt wird gibt es die Fehlermeldung: This call is not allowed, when sharing connections
set1 = neueverb.createStatement
set1.ResultsetType = com.sun.star.sdbc.ResultSetType.SCROLL_SENSITIVE
' Wert springt an dieser Stelle von 1003 auf 1004, aber die 1005 wird nicht erreicht.
' FEHLERMELDUNG,Eigenschaft oder Methode nicht gefunden, bei
' set1.ResultsetType = com.sun.star.sdbc.ResultSetType.SCROLL_INTENSITIVE
set1.ResultSetConcurrency = com.sun.star.sdbc.ResultSetConcurrency.UPDATEABLE
'EIGENSCHAFT ODER METHODE NICHT GEFUNDEN
' Wenn 1008 eingegeben wird, bleibt als Wert 1007 erhalten
set1 = set1.executeQuery("Select ""Name"" from ""Personendaten""")
set1.next
msgbox set1.getString(1) ' Name 1
set1.updateString(1, "test")
' Fehlermeldung: Result set is Read only (was auch klar ist, es lässt sich nicht anders einstellen)
neueverb.close
end sub
function getVerbindung
dim URL as string
dim diesesdocument, databasecontext, quelle as object
diesesdocument = ThisComponent
databasecontext = createUnoService("com.sun.star.sdb.DatabaseContext")
quelle = databasecontext.getByName("test")
' Selbst wenn die Datenquelle angemeldet ist, passiert nichts
getVerbindung = quelle.getConnection("","")
end function
Als Java Umgebung habe ich nur noch die 1.6.0_01.
Alle anderen habe ich mal vom Rechner geschmissen.
Vielleicht gibt es ja doch irgendwas, was ich übersehen habe?
Oder sollte ich OO noch einmal neu installieren und dann wieder ausprobieren?
Hallo Thomas,
danke für die Antwort. Ich vermute einmal, dass du der Autor der zwei Interessanten Bücher über Datenbanken und Makros bist.
Ich nutze die Version 2.2, alles läuft auf einem XP System.
Ich hatte das mit dem UPDATEABLE auch schon probiert. Aber geklappt hat es trotzdem nicht.
Testweise erstellte ich eine neue Datenbank: Diese hat nur die Tabelle Personendaten und darin als Primärschlüssel „Primär“ und „Name“ (als String). Es gibt 2 Einträge 0 : Name 1, 1: Name 2
Hier mal eine Liste der Dinge, die ich probierte und die dazugehörige Fehlermeldung.
sub satzaendern1
dim neueverb, set1 as object
neueverb = getVerbindung
msgbox neueverb.isReadonly ' Antwort False
' Falls die Zeile
' neueverb.setReadOnly(False)
' eingefügt wird gibt es die Fehlermeldung: This call is not allowed, when sharing connections
set1 = neueverb.createStatement
set1.ResultsetType = com.sun.star.sdbc.ResultSetType.SCROLL_SENSITIVE
' Wert springt an dieser Stelle von 1003 auf 1004, aber die 1005 wird nicht erreicht.
' FEHLERMELDUNG,Eigenschaft oder Methode nicht gefunden, bei
' set1.ResultsetType = com.sun.star.sdbc.ResultSetType.SCROLL_INTENSITIVE
set1.ResultSetConcurrency = com.sun.star.sdbc.ResultSetConcurrency.UPDATEABLE
'EIGENSCHAFT ODER METHODE NICHT GEFUNDEN
' Wenn 1008 eingegeben wird, bleibt als Wert 1007 erhalten
set1 = set1.executeQuery("Select ""Name"" from ""Personendaten""")
set1.next
msgbox set1.getString(1) ' Name 1
set1.updateString(1, "test")
' Fehlermeldung: Result set is Read only (was auch klar ist, es lässt sich nicht anders einstellen)
neueverb.close
end sub
function getVerbindung
dim URL as string
dim diesesdocument, databasecontext, quelle as object
diesesdocument = ThisComponent
databasecontext = createUnoService("com.sun.star.sdb.DatabaseContext")
quelle = databasecontext.getByName("test")
' Selbst wenn die Datenquelle angemeldet ist, passiert nichts
getVerbindung = quelle.getConnection("","")
end function
Als Java Umgebung habe ich nur noch die 1.6.0_01.
Alle anderen habe ich mal vom Rechner geschmissen.
Vielleicht gibt es ja doch irgendwas, was ich übersehen habe?
Oder sollte ich OO noch einmal neu installieren und dann wieder ausprobieren?