c# - 以除我的本地帐户以外的任何帐户登录时,Excel 不使用 OPENROWSET 插入数据
问题描述
我正在尝试通过 ac#winforms 应用程序将数据从 SQL Server 导出到 Excel。该应用程序在 Windows 域环境中运行。
这是查询:
string exportQuery = @"INSERT INTO OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0; Database=C:\temp\ExportedCategoryTotals.xls; HDR=YES' , 'SELECT * FROM [Sheet1$] AS f') " +
"SELECT category AS Category, counter AS Counter, date AS Date, locationname AS Location FROM categoryData " +
"WHERE locationName IN ('" + locationBox.SelectedItem.ToString() + "')" +
" AND date BETWEEN CAST('" + startDate + "' AS DATETIME)
AND CAST('" + endDate + "' AS DATETIME) ORDER BY locationName, date, counter DESC";
当我以自己的身份运行此查询时(登录到我在域上的用户帐户)(在我的 c# 应用程序内部),一切都按原样运行,并且数据从 SQL Server 导出到 excel。
当我以其他人的身份运行此查询时。该文件不包含任何数据。编译器没有错误。
我尝试创建与当前用户的广告用户匹配的登录名,并为该用户分配域管理员帐户的凭据。但同样的结果。
使用 Procmon 揭示:
我会很感激一些帮助。
解决方案
推荐阅读
- c - 为什么没有 INT_BIT?
- java - Elasticsearch REST 客户端 MultiGet——GetResult 始终为空
- scala - Maven构建问题与命名空间冲突
- eclipse - Eclipse 中的 AWS SAM 本地运行时错误
- mailgun - 使用 ActionMailer 和 mailgun 标记消息
- javascript - 当我在 JavaScript 上单击下一个和上一个时,如何为数组设置顺序?
- python - 在 Python 中将 DataFrame 日期从英国更改为美国
- python - 使用 Jinja2 生成模板的所有变体
- excel - 根据日期范围从现有工作表中复制行
- javascript - 生成 XBRL 文件的更好方法是什么?