【发布时间】:2012-08-13 11:05:49
【问题描述】:
下面,我从 c#.net windows 窗体中调用一个存储过程。
存储过程包含以下内容:
exec master..xp_cmdshell ''bcp "select ''''Column1'''',''''Column2'''',''''Column3'''',''''Column4'''',''''Column4'''',''''Column5'''',''''Column6'''',''''Column7'''',''''Column8''''" queryout "' + @Parent_Folder + @Transformed_Tbl + '.csv" -c -t, -T -Slocalhost'''
exec master..xp_cmdshell ''bcp Databasename..' + @database table+ ' out "' + @serverfolder+ 'temp_' + @user specified file name + '.csv" -c -t, -T -Slocalhost'''
exec master..xp_cmdshell ''copy /b "' + @serverfolder+ @user specified file name + '.csv" + "' + @serverfolder+ 'temp_' + @user specified file name + '.csv" "' + @serverfolder + @user specified file name+ '.csv"'''
它运行良好,
但有时用户希望取消此过程。当用户点击取消按钮时,如何取消这个正在运行的 bcp 进程。这是我在本地系统中的应用程序,我正在从另一个 sql server 系统访问数据库,然后将文件保存在同一个 sql server 系统中。
请给我一个关于这个问题的想法。
【问题讨论】:
-
哇;人们离开 xp_cmdshell 启用? (颤抖)
-
@DJKRAZE 你不能调用 xp_cmdshell 事务
标签: c# sql-server database bcp