Ora-ODBC und NVarchar-Feld

21/03/2008 - 21:59 von Martin Meyer | Report spam
Hallo zusammen,

im Zuge von Treiberproblemen im Zusammenhang mit dem NVarchar2-Type bin
ich auf folgende Eigentümlichkeit gestoßen, die sich modellhaft wie folgt
leicht reproduzieren làsst:

In eine A02-Datenbank ist eine Ora-Tabelle mit NVarchar-Feld über den
Oracle-ODBC-Treiber eingebunden (ORA 9.2.x).
Es lassen sich direkt in der Tabellenansicht neue Datensàtze anlegen (oh
Wunder), das NVarchar-Feld nimmt neben Zeichen, die meinem Zeichensatz
entsprechen, auch zB kyrillische Zeichen auf und speichert sie korrekt
weg, zeigt sie spàter auch wieder korrekt an.

Das NVarchar-Feld làsst sich bei bestehenden Datensàtzen auch beliebig
àndern, aber NUR wenn keine kyrillischen Zeichen enthalten sind(!).
Sobald ein Feld so ein kyrillisches Zeichen enthàlt kommt bei jedem
Änderungsversuch :

"Schreibkonflikt! Der Datensatz wurde seit Beginn der Bearbeitung von
einem anderen Benutzer geàndert. ... In Ablage kopieren / Eigene Änderung
verwerfen".

Die Meldung ist natürlich falsch. Der einzige Zugriff auf diese Tabelle
ist die Tabellenansicht meiner eingebundenen Tabelle.

BTW.: Löschen geht in der Tabellenansicht ebensowenig (Das Jet-Modul hat
den Vorgang angehalten . )

Das Phànomen làsst sich auch mit dem NChar-Datentyp beobachten,
seltsamerweise aber nicht beim NClob.

Ist das eine Macke des Treibers?
Hat schon jemand hier Erfahrungen mit den NDatatypes und Unicode-Zeichen
bei Oracle sammeln können?

TIA & Gruß,
Martin

Bei Antworten per eMail bitte an die Reply-To Adresse senden.
Oder der From-Adresse den String "nospam_" voranstellen.
eMails an die unmodifizierte From-Adresse werden ungelesen geloescht.
 

Lesen sie die antworten

#1 Stefan Dase
22/03/2008 - 14:46 | Warnen spam
Hallo Martin!

im Zuge von Treiberproblemen im Zusammenhang mit dem NVarchar2-Type bin
ich auf folgende Eigentümlichkeit gestoßen, die sich modellhaft wie folgt
leicht reproduzieren làsst:
(...)



Bisher hatte ich solche Probleme nicht, allerdings verwenden wir nur den
Standardzeichensatz (Englisch + Deutsch).

Hast du mal geprüft, welches Feld Access als Primàrschlüssel verwendet?
Ggf. hàngt es damit zusammen, bei mir wurde z.B. ein Double-Feld als PK
deklariert. Da hilft evtl. ein manuelles Setzen. Siehe dazu auch die
Diskussion vom 21.02.:
http://groups.google.de/group/micro...4f0f2e3ed0

(Link in eine Zeile)

HTH,
Stefan

Ähnliche fragen