BCP实践之文本文件导入

SQLSERVER安装默认关闭xp_cmdshell,需要手工开启,google的办法

-- 允许配置高级选项
EXEC sp_configure 'show advanced options', 1
GO
-- 重新配置
RECONFIGURE
GO
-- 启用xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO
--重新配置
RECONFIGURE
GO


源文件是|间隔,表是\t

A。对于小的文件,将|替换为制表符,用下面语句导入成功

EXEC master..xp_cmdshell 'BCP ZHAD.dbo.adAnaly_new in D:\adAnaly_new.dat -F 2 -c -t"|" -f D:\adAnaly_new.fmt -T'
参数说明:

-F 2 从第2行开始导入(标题行)

-c 以字符格式导入

-t 字段间隔符,在上面的语句中没有用

-f formart文件

-T 使用可靠链接,不需设用户名密码

B。对于大文件,使用editplus替换间隔提示内存不足

解决办法:1.虽然系统内存足够,但editplus不用,无法   2. 修改参数,测试SQL

以下脚本成功导入

EXEC master..xp_cmdshell 'BCP ZHAD.dbo.adAnaly1_new2 in D:\adAnaly1_new.dat -F 2 -c -t"|" -k -T'


总结:

1. -c很重要

2. 字符参数值是双引号,不是两个单引号

3. 对于建好的表,格式文件没什么用,有格式文件反倒出错

4. 导入数据前需要先建好表,以便数据对号入座





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值