当前位置: 代码迷 >> Oracle开发 >> 使用sqlldr把txt文件批量导入到oracle控制文件有关问题
  详细解决方案

使用sqlldr把txt文件批量导入到oracle控制文件有关问题

热度:50   发布时间:2016-04-24 06:31:52.0
使用sqlldr把txt文件批量导入到oracle控制文件问题
我的txt中的字段名跟建立表的字段名不同,txt字段名中有很多的空格,他们之间用tab空格间隔开
而且这样的文件有很多个,不能一个一个的更改字段名
它们统一存放在d:/data目录下,我想知道sqlldr的控制文件要怎么写才能一次把它们导入我oracle表text中
oracle中的text表已经建立好了,字段名都去掉空格了。

我现在用pl/sql导入,重复导入非常吃力,还请大家关注下。
------解决思路----------------------
写了主要的一段,剩下数据库处理的代码,你百度下就有了
    Sub ReadFiles()
        Dim Frm As New FolderBrowserDialog
        Frm.SelectedPath = Environment.SpecialFolder.Desktop
        If Frm.ShowDialog = Windows.Forms.DialogResult.OK Then
            Dim FileName As String
            For Each FileName In IO.Directory.GetFiles(Frm.SelectedPath)
                FileOpen(1, FileName, OpenMode.Input, OpenAccess.Read, OpenShare.LockRead)
                Dim mLine As String = ""
                Do While Not EOF(1)
                    mLine = LineInput(1) '读取数据行
                    Dim L() As String = mLine.Split(Chr(9)) '拆分字符串
                    '执行插入操作
                    '……
                Loop
                FileClose(1)
            Next
        End If
    End Sub

------解决思路----------------------
很多吗?
多个文件,控制文件可以这样写
OPTIONS (ROWS=20000)
LOAD DATA
INFILE 'E:\hgq documents\aa.txt'
INFILE 'E:\hgq documents\bb.txt'
PRESERVE BLANKS
INTO TABLE hgq_temp
truncate
REENABLE DISABLED_CONSTRAINTS
FIELDS TERMINATED BY ' ' 
TRAILING NULLCOLS
(tel,area
)
  相关解决方案