在Oracle中使用SQL LOADER导入CSV文件
我对数据库和编程很陌生.我对电脑术语不是很了解所以坚持下去.我有一个csv文件,我正在尝试加载到我的Oracle数据库中.它包含帐户信息,如姓名,电话号码,服务日期等.我已经安装了Oracle 11g第2版.这是我迄今为止所做的一步一步…… 1)Ran SQL Loader 我创建了一个包含我需要的列的新表.例如 create table Billing ( TAP_ID char(10),ACCT_NUM char(10),MR_ID char(10),HOUSE_NUM char(10),STREET char(30),NAME char(50) 2)它促使我创建了表.接下来,我为记事本中的数据创建了一个控制文件,该文件与我的Billing表位于同一目录中,并具有.ctl扩展名. GIS.csv是我从中获取数据的文件,也在同一目录中,并将其命名为Billing.ctl,看起来像这样. load data infile GIS.csv into table Billing fields terminated by ',' (TAP_ID,ACCT_NUM,MR_ID,HOUSE_NUM,STREET,NAME) 3)从命令行运行sqlldr以使用控制文件 sqlldr myusername/mypassword Billing.ctl 这是我被困的地方.我看过我正在做的视频教程,但是我收到了这个错误: SQL*Loader-522: lfiopn failed for file (Billing.log) 关于我在这里做错了什么的想法? 更新 我只是将文件移动到一个单独的目录中,我想我已经超过了之前的错误. 但现在我有另一个错误: 'SQL*Loader-350: Syntax error at line 1. 期待关键字LOAD,找到“SERV TAP ID”. 我不明白为什么会出现这个错误.我的billing.ctl有一个负载. LOAD data infile GIS.csv into table Billing fields terminated by ',MTR_ID,SERV_HOUSE,SERV_STREET,SERV_TOWN,BIL_NAME,MTR_DATE_SET,BIL_PHONE,MTR_SIZE,BILL_CYCLE,MTR_RMT_ID) 有什么想法吗? 解决方法Sqlldr想要在控制文件所在的同一目录中写入日志文件.但显然它不能.它可能没有所需的权限.如果您使用的是Linux或Unix,请尝试以与运行sqldr相同的方式运行以下命令: touch Billing.log 它将显示您是否拥有权限. 更新 正确的命令行是: sqlldr myusername/mypassword control=Billing.ctl (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |