Dataset zurückschreiben

22/01/2009 - 14:39 von Markus | Report spam
Hallo Ng,
ich bekomme immer folgende Fehlermeldung wenn ich das Dataset wieder zurück
in die Oracle-Datenbank schreiben will.


Dynamische SQL-Generierung für den UpdateCommand wird nicht für einen
SelectCommand unterstützt, der keine Schlüsselspalteninformationen zurückgibt.

Das füllen und anzeigen der Daten funktioniert.
Primàrschlüssel im Typitisierten Dataset ist vorhanden (dsTest.xsd)

Mit dem MS-SQL-Server 2000 klappt alles wunderbar
Ist mein Code für Oracle falsch.
Berechtigungen mit
grant select on WWW.ARTIKELZUSATZDATEN to xx;
grant update on WWW.ARTIKELZUSATZDATEN to xx;
grant insert on WWW.ARTIKELZUSATZDATEN to xx;
grant delete on WWW.ARTIKELZUSATZDATEN to xx;
für die Tabelle in Oracle vergeben

hier mein Code


strSql = "Select * from WWW.ARTIKELZUSATZDATEN'"
oleDaKatalog = New OleDb.OleDbDataAdapter(strSql, BuildCnnStoracle("xx",
"xx"))
oleDaKatalog.Fill(Me.dsTest.ARTIKELZUSATZDATEN)

bindsKatalog.DataSource = Me.dsTest
bindsKatalog.DataMember Me.dsTest.ARTIKELZUSATZDATEN.TableName.ToString
Me.txtTest1.DataBindings.Add("Text", Me.bindsKatalog, "Artikel")


Code für update:


Me.Validate()
bindsKatalog.EndEdit()
oleDaKatalog.Update(Me.dsTest.ARTIKELZUSATZDATEN) hier tritt die
Exception auf


MFG
Markus
 

Lesen sie die antworten

#1 Elmar Boye
22/01/2009 - 18:01 | Warnen spam
Hallo Markus,

Markus schrieb:
ich bekomme immer folgende Fehlermeldung wenn ich das Dataset wieder zurück
in die Oracle-Datenbank schreiben will.

Dynamische SQL-Generierung für den UpdateCommand wird nicht für einen
SelectCommand unterstützt, der keine Schlüsselspalteninformationen zurückgibt.

Das füllen und anzeigen der Daten funktioniert.
Primàrschlüssel im Typitisierten Dataset ist vorhanden (dsTest.xsd)



Es reicht nicht, dass das DataSet einen Primàrschlüssel hat,
auch die Oracle Tabelle muß einen haben, der identisch mit
dem des DataSet sein sollte.

Gruß Elmar

Ähnliche fragen