Экспорт таблицы SQL Server в Excel - PullRequest
0 голосов
/ 31 декабря 2010

Я использую 64-битную Windows Server 2008 с SQL Server 2008. И использую VS2008 + C # + .Net 2.0 + IIS 7.0 + ASP.Net.При выполнении следующего оператора я столкнулся со следующей ошибкой (ошибка возникает при доступе к странице aspx), я не уверен, является ли это 64-битной системной проблемой?

Sys.WebForms.PageRequestManagerServerErrorException: unregistered OLE DB access interface "Microsoft.Jet.OLEDB.4.0"

            StringBuilder sb = new StringBuilder();
            sb.AppendLine("select * from  OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE=" + s_path.Trim() + "',sheet1$) where name is not null");   //e:\\test1.xls
            DataSet ds = SqlUtil.ExecuteDataset(Database.StrConn, CommandType.Text, sb.ToString());
            if (ds.Tables[0].Rows.Count > 0)
            {
                GridView_Tlinkmans.DataSource = ds;
                GridView_Tlinkmans.DataBind();
            }

1 Ответ

2 голосов
/ 31 декабря 2010

У вас есть одна или две проблемы:

Вы запрашиваете OPENROWSET в SQL Server, и у вас есть x64 SQL Server, вам может понадобится MDAC для соединения SQL Server с ODBC/ OLEDB .Однако это говорит о том, что это часть ОС для Win 2008+.Я должен был установить на Win 2003

Тогда вам , вероятно, нужно это, которое ближе всего к JET, о котором я знаю: Microsoft Access Database Engine 2010 Redistributable

ГММВ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...