用sqlplus导出oracle数据

当初装oracle数据库的时候比较混乱,账号密码没记清,最后导致odbc建不起来,没法让oracle直接和R连接起来。

所以只能先导出oracle里的数据到本地,再读进R.

导出时候用了sqlplus 

sql plus 登陆 sys as sysdba  -- 一定要加上 as sysdba 不然总是报错

spool d:\a.csv
select ksmc || ',' || mzrq || ',' || age || ',' || gender || ',' || weekday || ',' || yearmzcnt || ',' || fee || ',' || ifholiday || ',' || hightemp || ',' || lowtemp || ',' || ifrain || ',' || winddir  || ',' || windstr from tmp_tb1
spool off


 -- sql plus 麻烦的是我还不知道如何复制黏贴,列太多的话,写起来比较麻烦

另外发现导出的文件里面 居然每隔几行就有一段列名说明的行,需要手动删除。我用linux删除

sed -i '/---/d' b.csv
sed -i '/KSMC/d' b.csv
sed -i '/select/d' b.csv
sed -i '/^\s/d' b.csv
sed -i '/SQL/d' b.csv

最后再放入R

rm(list = ls())
setwd("D://test//")
dt<-read.csv("c.csv",header = FALSE)
colnames(dt)<-c("ksmc","mzrq","age","gender","weekday","yearmzcnt","fee","ifholiday","hightemp","lowtemp","ifrain")

summary(dt)
library(Hmisc)
describe(dt)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值