2011-09-27 53 views
0

我目前正在审查如何将从一台计算机上的SQL Server中的bcp创建的文件导入到本地SQL Server中。这是我从第三方收到的数据文件,因此我不知道这些信息的数据结构等。我的SQL Server技能都相当新,所以请原谅:)我reviewd了BCP文件,并试图以下内容:通过bcp创建的文件的SQL Server导入

bcp TestDatabase in File.bcp -T 
Results: Invalid Object name 'TestDatabase' 

我创建的测试数据库TestDatabase,并试图再次查询,但具有同样的反应。然后我添加了-Slocal并且获得了登录超时,看起来像是进步!

我删除了-T标志,并尝试了各种不同的用户名和密码组合,没有任何运气。

所以我想开始,是否有一个我缺少的基础问题,我没有遵循的语法等,或者我应该玩我的本地SQL Server的信用?

回答

1

您需要指定服务器,用户名和表格。试试这个:

bcp TestDatabase..SomeTableName in File.bcp -S Server -U Username -P Password 
0

如果你看一下bcp Utility docs

-T意味着使用集成安全性(您登录帐户)

-S是服务器名称参数。

这两个参数不可互换。

您只能使用-U-P代替-T如果你有SQL身份开启(和你不应该,如果你能避免它)

最后克里斯·沙恩是正确的。您需要指定模式和表或视图名,而不仅仅是一个数据库名称,以及从文件服务器(-S)

同时,(点EJ布伦南正在作出)

导入数据放入表格中,则必须使用为该表格创建的格式文件 ,或者了解对其列的数据有效的表格结构和类型 。

所以你不能指望只是拿一个文件,并让bcp神奇地为你制作一张桌子。你需要使用SSIS来帮助你或其他工具来做到这一点。

+0

@ E.J.Brennan注意。我已经更新了答案 –