2

このエラーがあります:

LoadFromSQLServerメソッドでOLEDBエラーコード0x80004005が発生しました(ログインタイムアウトの期限が切れました)。発行されたSQLステートメントが失敗しました

そして、これが私のコードです、何が問題なのですか?

DECLARE @FileName VARCHAR(50); 
DECLARE @VendorID VARCHAR(50); 
DECLARE @sql VARCHAR(2000); 
DECLARE @Local_File_FullPath VARCHAR(100);   

SET @FileName = 'Extgt_skinny_file.txt.pgp' 
Set @VendorID = 'ET' 

Select @Local_File_FullPath = dw03_path  FROM GMAC_META.dbo.VENDOR_XFER_METADATA where vendor_id = @VendorID 

SET @sql = 'dtexec /SQL "\EMAP_FTP_XFER_CHECK" /SET \Package.Variables[User::FileName].Properties[Value];"' 
+ @FileName+'" /SET \Package.Variables[Local_File_FullPath].Properties[Value];' 
+ @Local_File_FullPath+' /SERVER "hqgmdw02/dw_dev"   /CHECKPOINTING OFF /REPORTING E'


 exec xp_cmdshell @sql 
4

2 に答える 2

0

次のことを試してください。

GRANT exec ON xp_cmdshell TO '<somelogin>'. xp_cmdshell (Transact-SQL)を参照してください。

64 ビット マシンで 32 ビット DTExec を使用しているかどうかを確認します。

SSIS パッケージを実行するユーザーに十分な権限があることを確認してください。SQL Server エージェントの SSIS の下で実行するか、手動で実行する可能性があります。SQL エージェントを実行しているサービス アカウントと自分のアカウントには、ジョブを実行する権限が必要です。エージェントを介して SSIS パッケージを実行する際のエラーを参照してください

于 2012-09-06T20:55:57.717 に答える