Az Access hibát okoz, ha egy- vagy dupla adattípusú mezőket exportál az Oracle-be
Eredeti tudásbáziscikk száma: 301915
Megjegyzés:
Alapvető makró-, kódolási és együttműködési képességekre van szükség. Ez a cikk a Microsoft Access-adatbázisokra (.mdb) és a Microsoft Access-projektekre (.adp) vonatkozik.
Jelenségek
Ha az Oracle ODBC-illesztővel exportál egy Olyan Access-táblát, amelynek adattípusa Egy vagy Dupla, az illesztő nem tudja exportálni ezeket a mezőket az alábbiak szerint.
A Microsoft Oracle-illesztő a következő hibaüzenetet jeleníti meg:
A Microsoft Access nem tudta hozzáfűzni az összes adatot a táblához. A számrekord>(ok) mezőinek <tartalma törölve lett, és a kulcs megsértése miatt 0 rekord elveszett.
- Ha az adatokat törölték, a beillesztett vagy importált adatok nem egyeznek meg a mező adattípusával vagy a céltábla FieldSize tulajdonságával.
- Ha a rekordok elvesztek, a beillesztett rekordok olyan elsődleges kulcsértékeket tartalmaznak, amelyek már léteznek a céltáblában, vagy megsértik a táblák közötti kapcsolat hivatkozási integritási szabályait. Mégis folytatja?
Az Oracle ODBC-illesztőprogramok a 8.1.6-os verzióig a következő hibaüzenetet jelenítik meg:
ODBC – a hívás meghiúsult [Oracle][ODBC][ORA] ORA-01401: A beszúrt érték túl nagy az oszlophoz (#1401)
A probléma oka
A Microsoft Access 97-ben az exportálási folyamat varChar2(40) értékké alakítja az egy- és dupla adattípusú mezőket. A Microsoft Access 2000-es és újabb verzióiban azonban a mezők VarChar2(4) formátumra lesznek konvertálva, ami túl kicsi az adatok tárolásához.
Megoldás
Az adatok Oracle-be való sikeres exportálásához használjon a megfelelő táblákon alapuló lekérdezést. Az adattípus sztringgé alakításához használja a CStr()függvényt.
Vegyük például a következő SQL-szintaxist:
SELECT tblExample.pkeyDataID, tblExample.dblTest
FROM tblExample;
ahol a dblTest egy dupla adattípusú mező. Konvertálja a dblTestet sztring adattípussá az SQL szintaxisának következő módosításával:
SELECT tblExample.pkeyDataID, CStr([dblTest]) AS Expr1
FROM tblExample;
A lekérdezés most már sikeresen exportálható az Oracle-be.
Ez a probléma a Microsoft Jet 4.0 adatbázismotor Service Pack 8 (SP8) verziójában oldódott meg.
Állapot
A Microsoft megerősítette, hogy ez egy probléma a cikk elején felsorolt Microsoft-termékekben.
További információ
A cikkben említett, külső gyártóktól származó termékek a Microsofttól független gyártók termékei. a Microsoft sem törvényi, sem másfajta garanciát nem vállal e termékek teljesítményére és megbízhatóságára vonatkozóan.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: