关于.net和sql2005数据导出xls问题

问题描述

小弟开始.net的开发。今天领导让我做个sql2005查询后导出xls。我在网上查了一段代码。然后自己该了该。现在有错了。我实在是不懂,来请各位帮帮小弟我。protectedvoidButton1_Click(objectsender,EventArgse){DataSetset=newDataSet();stringcmdText="selectqname,quniversity,q1,q2,q3,q4,q5,q6,q7,q8,q9,adddateFROMQuestionwherenid=1";set=SqlHelper.ExecuteDataSet(SqlHelper.strcon,CommandType.Text,cmdText,null);stringpath=HttpContext.Current.Request.ApplicationPath+"/images/";stringstr3=HttpContext.Current.Server.MapPath(path);stringstr4=Guid.NewGuid()+".xls";OleDbConnectionconnection=newOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+str3+str4+";ExtendedProperties=Excel8.0;");OleDbCommandcommand=newOleDbCommand();command.Connection=connection;command.Connection.Open();command.CommandText="Createtabletables([Name]varchar(250),[University]varchar(250),[Q1]varchar(250),[Q2]varchar(250),[Q3]varchar(250),[Q4]varchar(250),[Q5]varchar(250),[Q6]varchar(250),[Q7]varchar(250),[Q8]varchar(250),[Q9]varchar(250),[adddate]varchar(250))";command.ExecuteNonQuery();command.CommandText="insertintotables([Name],[University],[Q1],[Q2],[Q3],[Q4],[Q5],[Q6],[Q7],[Q8],[Q9],[AddTime]VALUES(@qname,@quniversity,@q1,@q2,@q3,@q4,@q5,@q6,@q7,@q8,@q9,@adddate)";//command.Parameters.Add(newOleDbParameter("@ID",OleDbType.Integer));command.Parameters.Add(newOleDbParameter("@qname",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@quniversity",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q1",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q2",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q3",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q4",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q5",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q6",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q7",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q8",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@q9",OleDbType.VarChar));command.Parameters.Add(newOleDbParameter("@adddate",OleDbType.VarChar));foreach(DataRowrowinset.Tables[0].Rows){for(inti=0;i<command.Parameters.Count;i++){command.Parameters[i].Value=row[i];}command.ExecuteNonQuery();}command.Connection.Close();HttpResponseresponse=HttpContext.Current.Response;response.Clear();response.WriteFile(str3+str4);stringstr6="attachment;filename=Shuju.xls";response.AppendHeader("Content-Disposition",str6);response.Flush();File.Delete(str3+str4);response.End();}

报错说我insert有错图片不会传。。就上文字了。“/MSRA”应用程序中的服务器错误。--------------------------------------------------------------------------------INSERTINTO语句的语法错误。说明:执行当前Web请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.OleDb.OleDbException:INSERTINTO语句的语法错误。源错误:行51:command.Parameters[i].Value=row[i];行52:}行53:command.ExecuteNonQuery();行54:}行55:command.Connection.Close();源文件:d:系统文件我的文档VisualStudio2010WebSitesMSRATestQb.aspx.cs行:53堆栈跟踪:[OleDbException(0x80040e14):INSERTINTO语句的语法错误。]System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResulthr)+1070856System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMSdbParams,Object&executeResult)+247System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object&executeResult)+194System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehaviorbehavior,Object&executeResult)+58System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehaviorbehavior,Stringmethod)+167System.Data.OleDb.OleDbCommand.ExecuteNonQuery()+113Qb.Button1_Click(Objectsender,EventArgse)ind:系统文件我的文档VisualStudio2010WebSitesMSRATestQb.aspx.cs:53System.Web.UI.WebControls.Button.OnClick(EventArgse)+118System.Web.UI.WebControls.Button.RaisePostBackEvent(StringeventArgument)+112System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(StringeventArgument)+10System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandlersourceControl,StringeventArgument)+13System.Web.UI.Page.RaisePostBackEvent(NameValueCollectionpostData)+36System.Web.UI.Page.ProcessRequestMain(BooleanincludeStagesBeforeAsyncPoint,BooleanincludeStagesAfterAsyncPoint)+5563--------------------------------------------------------------------------------版本信息:Microsoft.NETFramework版本:4.0.30319;ASP.NET版本:4.0.30319.1

解决方案

本帖最后由 w23p2010 于 2012-06-13 17:03:36 编辑
解决方案二:
怎么没有人呢。。各位前辈。。帮帮小弟。。。
解决方案三:
错误找到了。就是少了半拉括号。。。
解决方案四:
恭喜LZ可以结贴了有些问题自己仔细看看就能解决的很少在这发帖了人气不行了
解决方案五:
,[AddTime]VALUES之间少了),[AddTime])VALUES

时间: 2024-10-02 12:00:39

关于.net和sql2005数据导出xls问题的相关文章

sql2005数据导出方法(使用存储过程导出数据为脚本)_mssql2005

执行语句:exec KeleyiOutputSqlData thetablename 以下是创建存储过程脚本: 复制代码 代码如下: SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCreate PROCEDURE [dbo].[KeleyiOutputSqlData] @tablename sysname AS declare @column varchar(1000) declare @columndata varchar(1000) declare

利用PHPExcel将数据导出到xls格式的excel文件

在开发某地的经营许可证管理系统的时候需要将数据导出打excel文件,虽然一年前做某集团的ERP的时候用到过一次导入和导出,但是那时候太忙没时间写博客,一年过去了我也忘的差不多了,所以趁着今天将此次的使用写到博客中,作为以后开发的一个参考,免得再次使用的时候需要导出找资料,也给其他同行一个参考.作者:DragonDean,博客地址:http://www.cnblogs.com/dragondean/   什么是PHPExcel? PHPExcel 是用来操作Office Excel 文档的一个PH

php处理从mysql中将数据导出到xls乱码

php教程Excel类从mysql教程中将数据导出到xls乱码 $objPHPExcel->setActiveSheetIndex(0)   ->setCellValue('A1', iconv('gbk', 'utf-8', '中文Hello'))   ->setCellValue('B2', 'world!')   ->setCellValue('C1', 'Hello')   ->setCellValue('D2', 'world!');//用php 用自带转码函数ic

mysql 导出 xls 与csv 数据实现与乱码解决方法

mysql教程 导出 xls 与csv 数据实现与乱码解决方法 下面关于 先来看mysql 导出导入 xls 与csv数据实例方法,同时在碰到导入乱码时的有效解决方法, 在mysql命令行下执行以下sql语句: mysql>select * from xi_table into outfile 'd:www.111cn.nettest.xls'; 有时候有excel打开的时候会出现乱码, 因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,可以在服务器端使用icon

急,sql2005怎嘛把数据导出到txt文本

问题描述 sql2005怎嘛把数据导出到txt文本 解决方案 解决方案二:BCP工具bcp"select*from库名.DBO.表名[条件]"queryoutD:Empty.txt-c-SserverName-Usa-Ppassword

sql2005存储过程导出excel打不开

问题描述 sql2005存储过程导出excel打不开 我网上copy的代码,执行后没有报错,但是excel打不开,为什么呢? 代码如下: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go /*--数据导出EXCEL 导出表中的数据到Excel,包含字段名,文件为真正的Excel文件 ,如果文件不存在,将自动创建文件 ,如果表不存在,将自动创建表 基于通用性考虑,仅支持导出标准数据类型 --邹建 2003.10(引用请保留此信息)--*/ /*--调用示例

一个将数据导出到EXCEL的存储过程

excel|存储过程|数据 /*--数据导出EXCEL  导出查询中的数据到Excel,包含字段名,文件为真正的Excel文件 ,如果文件不存在,将自动创建文件 ,如果表不存在,将自动创建表 基于通用性考虑,仅支持导出标准数据类型作者:邹建--*/ /*--调用示例  p_exporttb @sqlstr='select * from 地区资料'  ,@path='c:\',@fname='aa.xls',@sheetname='地区资料'--*/ create proc p_exporttb@

我写的一个将数据库数据导出到EXCEL的类(ASP)

excel|数据|数据库 clsExport2Excel.asp<%'类开始Class clsExport2Excel '声明常量.变量Private strFilePath,strTitle,strSql,strField,strRows,strColsPrivate strCn,strHtml,strPathPrivate objDbCn,objRsPrivate objXlsApp,objXlsWorkBook,objXlsWorkSheetPrivate arrField '初始化类Pr

ASP如何通过OWC把网页数据导出EXECL文件

数据|网页|owc ASP通过OWC组件把网页数据导出EXECL文件,实现代码如下: <%'先要用regsvr32.exe msowc.dll注册owc组件(msowc.dll安装office2000后就有了,在office的安装目录下搜索*owc*.chm可找到这关于owc的帮助文档)Dim objOWCDim ExeclFileName ExeclFileName = server.mappath("ExeclText.xls")Set objOWC = Server.Cre