0

无论出于何种原因,当我进入使用 BCP 实用程序从查询中生成包含数据的 txt 文件的步骤时,它会挂在文件创建上。那么如果我尝试在数据库中查询这些表,它真的不会让我这样做。

有谁知道为什么会这样?查询其实很简单:

SET @cmdQueryout = 'bcp "SELECT X FROM Database.dbo.Details WHERE DetailsId = (SELECT MAX(DetailsId) FROM Database.dbo.Details WHERE CommitDateTime IS NOT NULL AND LEFT(PolicyNumber, 3) != ''NYD'') ORDER BY X, Y, Z" queryout "' + @detailFilePath + '" -c -T'

EXEC master..xp_cmdshell @cmdQueryout  

我可以看到它创建了第一个文件,但其中没有数据并且它停在那里。

我可以打开文件,但如果我尝试删除,它不会让我,因为 BCP 正在使用该文件。

查询的运行时间不应超过几秒钟,那么为什么会这样停止呢?

编辑 - 如果我在另一个查询窗口中单独运行它,它可以工作。

但如果它在 SQL 作业和事务中,它就不起作用。

4

1 回答 1

0

发现了问题。

当我需要指定用户名和密码时,我使用的是受信任的连接。

-Uusername -Ppassword

代替-T.

于 2013-02-05T19:58:35.147 回答