Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Access2000/Oracle 9i] Datentypen

Empfohlene Antworten

Veröffentlicht

Hallo Gemeinde,

folgendes Problem:

Ich habe hier ein ziemlich großes Update-Statement in Access.

jetzt bekomme ich bei einigen Feldern jeweils die Meldung "Typen unverträglich".

Zieldatenbank ist Oracle 9i, welche in Access per ODBC darauf verlinkt ist.

Beispielsweise möchte ich ein ursprüngliches Byte-Feld in ein Oracle-Feld mit den Attributen "Number, Größe:3" updaten, ich bekomme aber immer diesen Fehler.

Wie bzw. wo muss ich die inkompatiblen Dinge konvertieren, dass es funktioniert? Im Update-Statement selber habe ich sogar schonmal alle Werte sicherheitshalber in "sichere Datentypen" konvertiert, ohne Erfolg.

Hat jemand allgemeine Tipps für mich?

Dankeschön!

lg

Stefan

also in access bringst du in den datentyp byte (der tatsächlich ein byte benötigt) nur ganzzahliges von 0 bis 255 rein. wenn du oracles number(3) nach access per odbc verknüpfst, erkennt er es als decimal mit 28 stellen genauigkeit und 12 byte speicherverbrauch - versuch es mal als number ohne angabe von size bzw. scale.

edit: ahjo, schau dir mal die access-faq von donkarl an, pkt. 8.8 gibt dir einige infos zu datentypen in oracle/access:

http://www.donkarl.com/index.htm?/FAQ/FAQ8Kommunikation.htm

und lg nach vlbg aus wien ;)

s'Amstel

Guten morgen,

liebe Grüße zurück nach Wien an den Bungee-Jumper ;)

Ich war kürzlich erst aufm Turm (aber nur zum Essen).

So Off-Topic-Ende, der Tipp war wirklich super, vielen Dank.

Gruß

Steve

Aber nochmal eine Zusatzfrage:

Wenn ich versuche, die wirklich passenden Datentypen zu verwenden (lt. dem Microsoft Dokument von einer der obigen Quellen), dann bleibt es weiterhin bei "Typen unverträglich", lediglich der Einsatz von Strings funktioniert einwandfrei.

Ist das richtig so oder mache ich etwas falsch, dass ich zB. in ein Oracle-Feld mit number (Größe:1, Scale:0) keinen Access-Integer-Wert einfügen kann.

Liegt das eventuell daran, dass ein integer-Wert größer sein kann als ein number-Wert aus Oracle mit Größe 1?

lg

Stefan

Ist das richtig so oder mache ich etwas falsch, dass ich zB. in ein Oracle-Feld mit number (Größe:1, Scale:0) keinen Access-Integer-Wert einfügen kann.

Liegt das eventuell daran, dass ein integer-Wert größer sein kann als ein number-Wert aus Oracle mit Größe 1?

number(3) bei oracle heisst: maximal drei vorkommastellen, sonst nix, d.h. maximal 999. 999 geht noch, bei 1000 bekommst du einen ORA-01438.

wenn du integer (das ja, je nachdem ob es signed oder unsigned ist, maximal 32768 oder 65536 sein kann) in oracle speichern willst, musst du number mit einer grösseren size (oder ganz ohne) angeben. die scale bei number ist nur für die nachkommastellen zuständig.

s'Amstel

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.