写这文章推荐给编辑是因为,网上很多资料是错误的,不全面的,光看资料是没有办法解决问题的.
SELECT hotelid into #tempHotelC FROM OPENROWSET(Bulk 'd:/a/hotelidc.txt',FORMATFILE='d:/a/format.txt') AS b
这个FORMATFILE是怎么出来的,怎么写的呢?
可以自己写,但也不知道格式是什么,网上说有一个BCP的,BCP是什么呢,他就是个命令,没有界面的,可以在cmd里面执行,我们也可以通过
exec master..xp_cmdshell 在查询分析器里面执行这个命令
现在问题来了,sql报安全问题说无法执行 exec master..xp_cmdshell ,说可以通过sp_configure来设置,使支持master..xp_cmdshell
命令如下
EXEC sp_configure 'show advanced options', 1
GO
-- 重新配置
RECONFIGURE
GO
-- 启用xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO
--重新配置
RECONFIGURE
GO
这是我改过的,网上大部分都写错了,真是害死人,EXEC sp_configure 'xp_cmdshell', 1 为启用,0为禁止,而网上写的刚好是反的
现在我们来生成格式文件,这是我试过最后可以成功的
exec master..xp_cmdshell 'BCP test.dbo.Table_1 format