2

无法批量加载,因为无法打开文件。操作系统错误代码 21(设备未准备好。)。

大家好,

我是使用 ASP.NET 在 MS SQL Server 中上传图像的新手。从与服务器相同的机器的查询中上传图像很酷,但是当从远程机器 ASP.NET Web 应用程序到 MS SQL Server 时,我收到上述错误。

我不明白需要做什么,我看过几个线程和论坛,但我无法理解,请你帮我解决一下。我正在寻找一些描述性的步骤来解决这个问题。

Session["FileName"] equals some d drive file

我使用的查询:

command.CommandText = "UPDATE user_info "
                                + "SET User_Image = (SELECT * FROM Openrowset(Bulk '" + Session["FileName"] + "', Single_Blob) AS User_Image) "
                                + "WHERE id =" + "22222";
  • 我使用 SQL 身份验证

  • 我已经启用了命名管道 + TCP/IP

  • 如果要使用EXECUTE AS,有人可以解释这个查询。是否有任何需要启用的设置。生无可恋 :(

提前致谢 !

4

2 回答 2

9

我知道这是个老问题,但它可能会帮助其他有疑问的人。要使用批量,文件需要在服务器上。

这意味着您需要在使用批量之前将文件从客户端机器上传到服务器。

于 2015-02-09T07:52:17.893 回答
0

1) 获取正在运行的 sql server 帐户的名称 2) 转到 Session["FileName"] 中的文件夹等于某个 d 驱动器文件
3) 将该文件夹的权限授予 sql server 帐户以读写权限

于 2012-10-16T22:50:13.503 回答