Oracle sqlldr导入以回车和回车换行字符结尾的文本
Jun 07, 2016 pm 05:11 PM在一个大文本中(超过1.5G),当有同时存在回车换行以及回车字符结尾时,如果换行结尾的量大于sqlldr默认缓冲1048576时候,会报错
在一个大文本中(超过1.5G),当有同时存在回车换行以及回车字符结尾时,如果换行结尾的量大于sqlldr默认缓冲1048576时候,会报错。
SQL*Loader-510: 数据文件 (XXX.txt) 中物理记录超过最大限制 (1048576)
SQL*Loader-2026: 加载因 SQL 加载程序无法继续而被终止。
网上搜很久,解决方法
修改 readsize — 读取缓冲区的大小 (默认 1048576) 修改为 20971520
但是还是报错
SQL*Loader-510: 数据文件 (XXX.txt) 中物理记录超过最大限制 (20971520)
SQL*Loader-2026: 加载因 SQL 加载程序无法继续而被终止。
这边简单分析下原因,sqlldr加载到我这边txt文本中第一行以回车换行符结尾,就默认所有行都以回车换行符结尾了,当加载到以换行符结尾的文本区域时由于换行结尾的行数过大,缓冲区无法装载而报错。
解决方法:
INFILE "xxx.txt" "str X'0A'"
0A代表换行符,即将换行符一起装载,相当于定义新行结尾符号。

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Réduisez l'utilisation de la mémoire MySQL dans Docker

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE?

Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée

Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin)

Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape

Comment sécuriser MySQL contre les vulnérabilités communes (injection SQL, attaques par force brute)?

Comment configurer le cryptage SSL / TLS pour les connexions MySQL?
