2011-03-24 87 views
1

我上传Excel文件,然后使用asp.net OLEDB连接读取数据,但我发现了以下错误:ASP.NET OLEDB权限错误​​

Microsoft Jet数据库引擎无法打开文件“ ”。它已经由另一个用户专门打开,或者您需要查看其数据的权限。

Dim ocmd As New OleDbCommand("select * from [Sheet1$]", conn) 

第12行:conn.Open() 第13行中:Dim ODR作为OleDbDataReader = ocmd.ExecuteReader()

conn.open()线是红色突出显示为错误。

excel文件上传成功并存在文件夹中。

回答

0

你的文件上传逻辑是什么样的?如果您使用FileStream,请确保在尝试使用OleDb之前正确关闭流...如果您未关闭流,则该文件将保持锁定状态。

否则,请确保您没有上载的文件当前在Excel中打开。

+0

错误在我在远程服务器上运行时出现。在localhost上使用它是完美的 – hotcoder 2011-03-25 02:00:00

+1

在这种情况下听起来像是权限问题......作为测试,请尝试将所有人的完全权限授予文件正在上传到的文件夹。如果它在这种情况下起作用,请尝试将权限限制为仅在该机器上运行的asp.net帐户。 – 2011-03-25 03:42:31