我已經編寫了一個將表數據轉儲到文本文件的過程,如下所示(假定相關變量已聲明);從JDBC調用時,無法將表數據轉儲到使用BCP的文件
SET @sql = '"SELECT * FROM ##OutputData"'
SET @cmdline = 'bcp '+ @sql +' queryout '[email protected]+'\outputFile.csv -c -t -T -S' + @@ServerName
EXEC master..xp_cmdshell @cmdline
此過程在從SQL Server內部執行時正常工作,但不是從Java中的JDBC調用它時。
通過查看活動監視器,我可以看到操作查詢"SELECT * FROM ##OutputData"
的事務正在被執行該過程的事務阻止。有效地鎖定流程。
我玩過代碼,看不出爲什麼會發生這種情況。有什麼我失蹤的地方?
感謝您的幫助......
編輯:改變引用石英到JDBC而不是因爲這可能更有意義。