ASP.NET OleDB 权限错误

Posted

技术标签:

【中文标题】ASP.NET OleDB 权限错误【英文标题】:ASP.NET OleDB permissions error 【发布时间】:2011-03-24 17:00:08 【问题描述】:

我正在上传 Excel 文件,然后在 asp.net 中使用 oledb 连接读取数据,但出现以下错误:

Microsoft Jet 数据库引擎无法打开文件“”。它已被其他用户独占打开,或者您需要权限才能查看其数据。

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

第 12 行:conn.Open() 第 13 行:Dim odr As OleDbDataReader = ocmd.ExecuteReader()

conn.open() 行以红色高亮显示错误。

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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

当我在远程服务器上运行它时出现错误。在 localhost 使用时非常完美 在这种情况下听起来像是权限问题...作为测试,尝试向每个人授予对文件上传到的文件夹的完全权限。如果在这种情况下有效,请尝试将权限缩小到仅在该计算机上运行 asp.net 的帐户。

以上是关于ASP.NET OleDB 权限错误的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 ASP.NET OLEDB 向数据库中添加一行?

asp.NET 的update错误,请高人进来看下

从 ASP.NET 向 MSAcess 添加记录

ASP.NET导入导出

asp.net,本地发布,IIS报错,HTTP 错误 500.19 - Internal Server Error

如何将 Openoffice calc excel 连接到 sql server 而不是 asp.net 中的 oledb excel 连接