Auf Oracle Datenbank mit VB6 zugreifen

Hallo,
ich will mit VB6.0 auf eine Oracle Datenbank zugreifen. Das klappt inzwischen auch schon mit ADO. Ich kann Tabellen öffnen und Werte anschauen. Wenn ich jedoch Neue Werte reinschreiben will, bekomme ich immer Fehlermeldungen. Hat jemand eine Idee, was ich falsch mache?

Meine Fehlermeldung:
Das aktuelle Recordset unterstützt keine Aktualisierung. Hierbei handelt es sich möglicherweise um eine Einschränkung seitens des Providers oder des gewählten LockTypes.

LockType und CursorType habe ich schon alle ausprobiert.

Wenn ich mit einer Grid gebunden arbeite, kann ich Werte in die Datenbank schreiben. Das heist. Zugriff auf die DB habe ich!!!

Anbei mein Code um darauf zuzugreifen
Danke im voraus
Thomas

Sub OeffneOracle()
Dim Wert As String
Dim strCnn As String
Dim ConTest As ADODB.Connection
Dim rs As ADODB.Recordset

Set ConTest = New ADODB.Connection
With ConTest
.ConnectionString = „Provider=MSDAORA.1:stuck_out_tongue_winking_eye:assword=test;User ID=testuser;Data Source=DBName:stuck_out_tongue_winking_eye:ersist Security Info=True“
.Open
End With

Set rs = New ADODB.Recordset
With rs
.ActiveConnection = ConTest
.CursorLocation = adUseServer '2
.locktype = adLockOptimistic '3
.CursorType = adOpenKeyset '1
.Open „select * from FI“
End With

'Werte auslesen kann ich
Wert = rs(„AeNam“)

'In der nächsten zeile erhalte ich den Fehler
rs.Fields(„AeNam“) = „ABC“

'auch das klappt nicht
rs.AddNew
rs.Fields(„AeNam“) = „ABC“
rs.Update

rs.Close

End Sub

Hi Thomas !

Um Werte in einer Datenbank abzulegen verwende ich das Command Objekt :

Dim cmd as new ADODB.Command

set cmd.ActiveConnection = cnn
cmd.CommandType = adCmdText
cmd.CommandText = "insert into … " oder auch "update xxx set … "
cmd.Execute

Funktioniert super !!!

Außerdem würde ich dir als OLEDB Provider den von Oracle empfehlen !

verwende folgenden Connect String :
„Provider=OraOLEDB.Oracle:stuck_out_tongue_winking_eye:assword=“ & ls_Pwd & „;User ID=“ & ls_Usr & „;Data Source=“ & ls_Sid & „:stuck_out_tongue_winking_eye:ersist Security Info=True;DistribTX=0“

LG
Mario

Danke
Danke für die Info,
werde es gleich ausprobieren

Gruß
Thomas