使用VS2008查询SQL Server里面的表格,并将表格生成Excel 文件
本人新手,1.现SQLServer2005中有一张表格:数据库A.dbo.表A。我用vs2008制作了一张网页查询表A的内容,请问:怎样将这张表生成一个Excel文件?我...
本人新手,
1.现SQL Server 2005中有一张表格:数据库A.dbo.表A。我用vs2008制作了一张网页查询表A的内容,请问:怎样将这张表生成一个Excel文件?我在表格下面添加了一个按钮,双击,click事件应该怎么写?
我只会SQL Server 2005中导出Excel的语句。
2.关于查询表A的2个控件,LinqDataSource和SqlDataSource用哪个查询数据生成Excel比较好?还是都一样?
3.这种生成Excel的方法,到底是将网页中的信息生成Excel还是SQL中的数据导出excel?比如我用网页远程查看数据库,生成的Excel是在本地还是在服务器端?
不要求全会,请大家把知道的写出来,请大家帮忙,追分 展开
1.现SQL Server 2005中有一张表格:数据库A.dbo.表A。我用vs2008制作了一张网页查询表A的内容,请问:怎样将这张表生成一个Excel文件?我在表格下面添加了一个按钮,双击,click事件应该怎么写?
我只会SQL Server 2005中导出Excel的语句。
2.关于查询表A的2个控件,LinqDataSource和SqlDataSource用哪个查询数据生成Excel比较好?还是都一样?
3.这种生成Excel的方法,到底是将网页中的信息生成Excel还是SQL中的数据导出excel?比如我用网页远程查看数据库,生成的Excel是在本地还是在服务器端?
不要求全会,请大家把知道的写出来,请大家帮忙,追分 展开
2个回答
展开全部
1、你网页查询表A,是需要放在GridView中显示出来,然后导出到excel吧,如果是这样,有个简便方法:
System.Web.HttpContext curContext = System.Web.HttpContext.Current;
curContext.Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("excel文件名.xls", System.Text.UTF8Encoding.UTF8));
curContext.Response.Charset = "UTF-8";//设置字符集
curContext.Response.ContentEncoding = System.Text.Encoding.UTF8; //设置编码集
curContext.Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
//写到Excel的数据不用分页
gridview1.RenderControl(htmlWrite);//这个是装载你数据的数据列表GridView
Response.Write(stringWrite.ToString());//向客户端写数据
Response.End();
2、直接用ado.net写就可以,将数据读到DataSet里,绑定到GridView上。
string stSQL=你的sql语句;
SqlConnection conn=new SqlConnection("server=服务器IP;database=数据库名称;uid=用户名;pwd=密码;");
SqlCommand cmd = new SqlCommand(stSQL, conn);
SqlDataAdapter sda=new SqlDataAdapter(cmd);
DataSet ds=new DataSet();
sda.Fill(ds);
这样,这个ds就是你要取出的数据。
3、这个excel文件是弹出保存对话框,让你自己选择保存地址的。是在本地。
写这多,挺累。
System.Web.HttpContext curContext = System.Web.HttpContext.Current;
curContext.Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("excel文件名.xls", System.Text.UTF8Encoding.UTF8));
curContext.Response.Charset = "UTF-8";//设置字符集
curContext.Response.ContentEncoding = System.Text.Encoding.UTF8; //设置编码集
curContext.Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
//写到Excel的数据不用分页
gridview1.RenderControl(htmlWrite);//这个是装载你数据的数据列表GridView
Response.Write(stringWrite.ToString());//向客户端写数据
Response.End();
2、直接用ado.net写就可以,将数据读到DataSet里,绑定到GridView上。
string stSQL=你的sql语句;
SqlConnection conn=new SqlConnection("server=服务器IP;database=数据库名称;uid=用户名;pwd=密码;");
SqlCommand cmd = new SqlCommand(stSQL, conn);
SqlDataAdapter sda=new SqlDataAdapter(cmd);
DataSet ds=new DataSet();
sda.Fill(ds);
这样,这个ds就是你要取出的数据。
3、这个excel文件是弹出保存对话框,让你自己选择保存地址的。是在本地。
写这多,挺累。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询