declare @s varchar(8000),@er varchar(10)
set @er='er'
set @s='bcp "test_Doc..'+@er+'" in 172.20.52.87\c:\1.txt -c -S"Fred" -U"sa" -P"sasa"'
EXEC master..xp_cmdshell @s
set @er='er'
set @s='bcp "test_Doc..'+@er+'" in 172.20.52.87\c:\1.txt -c -S"Fred" -U"sa" -P"sasa"'
EXEC master..xp_cmdshell @s
解决方案 »
- [向liangCK大哥以及各位大哥提问]数据库一个表与另一个表数据绑定的问题
- IDispatch error #3092 之类的错误信息查询
- 请教一条简单SQL语句
- 高手帮忙,一个SELECT 的问题,写不出来了
- 有时SQL占cpu太多,是怎么回事,导致主机CPU使用100%
- paradox!索引过期如何解决??求助。
- win98+ado+sql server软件的开发和发布
- 何为游标?哪位好心人可以给我解释一下,要求通俗易懂!谢谢了!
- sql查询,急
- 一条查询语句: 多对多关系得到多个记录
- 求救 object_id(N'[dbo].[client_grid1]') 这里面的 N 是什么意思?
- 报错为"在bcp数据文件中遇到意外的EOF"如何解决呢?谢谢!
1.SQLState = S0002, NativeError = 208
2.Error = [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'test_Doc..er'.
3.NULL
还是导入数据的同时系统就给你建了表,它的字段类型都是VARCHAR(255)、字段个数就是根据制表符系统分析所得出的个数?
GOIF EXISTS (SELECT 1 FROM sysobjects WHERE id = object_id('address_list') AND type = 'U')
DROP TABLE address_list
GOCREATE TABLE address_list (
id NUMERIC(20) IDENTITY,
name VARCHAR(100) NOT NULL,
Tel VARCHAR(50) NULL,
mobile_Tel VARCHAR(50) NULL,
position VARCHAR(40) NULL,
mail VARCHAR(50) NULL,
department VARCHAR(100) NOT NULL
)
GOUSE master
GOEXEC master..xp_cmdshell 'bcp "test_Doc..[address_list]" in "\\172.20.52.87\c:\1.txt" -c -S"Fred" -U"sa" -P"sasa"'报错:
1.SQLState = S1000, NativeError = 0
2.Error = [Microsoft][ODBC SQL Server Driver]Unable to open BCP host data-file
3.NULL请大家帮我分析一下是什么原因啊,很急!!!
Declare @s varchar(1000),@er varchar(10)
Set @er='er'
Set @s='bcp "test_Doc..'+@er+'" in \\172.20.52.87\c:\1.txt -c -S"Fred" -U"sa" -P"sasa"'
EXEC master..xp_cmdshell @s
* 新建address_list表,准备接收数据
*/USE test_Doc
GOIF EXISTS (SELECT 1 FROM sysobjects WHERE id = object_id('address_list') AND type = 'U')
DROP TABLE address_list
GOCREATE TABLE address_list (
id NUMERIC(20) IDENTITY,
name VARCHAR(100) NOT NULL,
Tel VARCHAR(50) NULL,
mobile_Tel VARCHAR(50) NULL,
position VARCHAR(40) NULL,
mail VARCHAR(50) NULL,
department VARCHAR(100) NOT NULL
)
GO/*
* BCP命令导入
*/
USE master
GOEXEC master..xp_cmdshell 'bcp "test_Doc..[address_list]" in "d:\Tomcat 5.0\webapps\文档管理用户系统测试数据.txt" -c -S"Fred" -U"sa" -P"sasa"'--------------------------------------------------------------------------
报错:
NULL
Starting copy...
SQLState = S1000, NativeError = 0
Error = [Microsoft][ODBC SQL Server Driver]Unexpected EOF encountered in BCP data-file
NULL
0 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.): total 10
NULL请问各位高手这是怎么回事啊?
好像“表不用建的”不行啊!
如果只写这段SQL:
/*
* BCP命令导入
*/
USE master
GOEXEC master..xp_cmdshell 'bcp test_Doc..address_list in "d:\Tomcat 5.0\webapps\文档管理用户系统测试数据.txt" -c -t"," -S"Fred" -U"sa" -P"sasa"'会出这样的报错:
SQLState = S0002, NativeError = 208
Error = [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'test_Doc..address_list'.
NULL另外,我找到了Unexpected EOF encountered in BCP data-file的原因:
我的“字段终止符”是逗号(由于用企业管理器导数据时一路next的结果)而非默认的制表符。
所以SQL改为我在这条回复中写的就对了(表还是要建的)。
但是还有一个问题:我的“文本限定符”是双引号而不是NULL,这样由那个txt文件导入数据库中的数据就都有了双引号,我想导入的数据不要双引号不知该怎么办?