sqlldr 命令 入门级问题
刚才在论坛上看见一个新的词组sqlldr,我的ora 很基础。我就百度了一下这个词组。
发现原来是SQL*LOADER的简写,我参照网上的一个例子(http://www.itpub.net/thread-79893-1-1.html第四楼),在我的dos下一步步的运行这个例子。
发现这样可以查看到sqlldr的信息。
c:\document and settings\administrator\sqlldr
但是我连库以后却不能使用sqlldr这个命令了,步骤:
sqlplus /nolog
conn sys/sa as sysdba;
sqlldr userid=fancy/testpass control=result.ctl log=resulthis.out
这时候我使用sqlldr加载数据,dos提示我说sqlldr是未知的开头命令...我不知道为什么,高手请赐教。
哪位有关于sqlldr深入浅出的例子也可以发上,继续+分
------解决方案--------------------sqlldr是在dos下运行的,不用登录到数据库
------解决方案--------------------cmd命令行直接用跟imp跟exp一样
------解决方案--------------------你要有一个control file文件,在dos下运行sqlldr userid=user/password@sid control=result.ctl
control file的格式大概是这样:
load data
infile 'c:\a.txt' truncate
into table tablename fields terminated by whitespace optionally enclosed by "'"
(field1, field2)
a.txt是要导入的数据文件
------解决方案--------------------ctl文件放哪里都行吧,control=后面可以跟路径的
------解决方案--------------------你的Oracle安装的时候有没有出问题啊,我的意思是是有没有报错,没有完全解决安装报错问题的话,某些功能用不了的,我的经验之谈,我遇到过类似问题
------解决方案--------------------你命令行不是要这样用吗?
sqlldr scott/tiger@orcl .....
这样你就凭用户和密码认证连到了oracle
------解决方案--------------------你的用户名密码和SID是错的吧,用户名:sys,密码:sa,@后面是SID,是你用Net Configure Assistant设置的本地服务名,你现在的sysdba这个应该不是吧,如果oracle是安装在本机上且只有一个实例,可以不用加@SID,只用用户名加密码就可以。
------解决方案--------------------log日志文件可以指定,也可以不指定,如果不指定,默认生成在你的windows当前目录下,就是你执行sqlldr时的目录
------解决方案--------------------
------解决方案--------------------补充一下:第二步,保存成result.ctl保存到:c:\根目录下
纠正:第三步建表的语句分号是中文分号,
如果楼主用plsql的话,直接用文本导入器,可以研究一下,很方便,功能与此类似