通过bcp创建的文件的SQL Server导入
问题描述:
我目前正在审查如何将从一台计算机上的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的信用?
答
您需要指定服务器,用户名和表格。试试这个:
bcp TestDatabase..SomeTableName in File.bcp -S Server -U Username -P Password
答
如果你看一下bcp Utility docs
-T
意味着使用集成安全性(您登录帐户)
-S
是服务器名称参数。
这两个参数不可互换。
您只能使用-U
和-P
代替-T
如果你有SQL身份开启(和你不应该,如果你能避免它)
最后克里斯·沙恩是正确的。您需要指定模式和表或视图名,而不仅仅是一个数据库名称,以及从文件服务器(-S)
同时,(点EJ布伦南正在作出)
导入数据放入表格中,则必须使用为该表格创建的格式文件 ,或者了解对其列的数据有效的表格结构和类型 。
所以你不能指望只是拿一个文件,并让bcp神奇地为你制作一张桌子。你需要使用SSIS来帮助你或其他工具来做到这一点。
@ E.J.Brennan注意。我已经更新了答案 –