当前位置:首页 » 操作系统 » aspnet插入数据库数据

aspnet插入数据库数据

发布时间: 2025-04-16 08:28:20

⑴ ASPNET数据导出到excel文件给客户端下载的几种方法麻烦告诉我

ASP.NET数据导出到excel文件给客户端下载的几种方法麻烦告诉我?

Response.WriteFile(ASP.NET 数据导出到excel文件给客户端下载的几种方法

数据导出到excel文件给客户端下载的几种方法:

方法一:导出到csv文件,存放在服务器端任一路径,然后给客户下载

优点:

1、可以进行身份认证后给客户下载,如果放到非web目录就没有对应的url,客户无法随时下载。

2、也是因为生成了文件,所以占用了服务器的空间,但是可以把文件名存放到数据库,再次给客户下载的时候不需要重复生成文件。

3、csv文件是文本文件,逗号隔开字段,回车隔开行,易于数据导入导出。

实现方法:

sqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings);

SqlDataAdapter da=new SqlDataAdapter("select * from tb1",conn);

DataSet ds=new DataSet();

da.Fill(ds,"table1");

DataTable dt=ds.Tables;

string name=System.Configuration.ConfigurationSettings.AppSettings.ToString() DateTime.Today.ToString("yyyyMMdd") new Random(DateTime.Now.Millisecond).Next(10000).ToString() ".csv";//存放到web.config中downloarl指定的路径,文件格式为当前日期 4位随机数

FileStream fs=new FileStream(name,FileMode.Create,FileAccess.Write);

StreamWriter sw=new StreamWriter(fs,System.Text.Encoding.GetEncoding("gb2312"));

sw.WriteLine("自动编号,姓名,年龄");

foreach(DataRow dr in dt.Rows)

{sw.WriteLine(dr "," dr "," dr);}

sw.Close();

Response.AddHeader("Content-Disposition", "attachment; filename=" Server.UrlEncode(name));

Response.ContentType = "application/ms-excel";// 指定返回的是一个不能被客户端读取的流,必须被下载

Response.WriteFile(name); // 把文件流发送到客户端

Response.End();

方法二:导出到csv文件,不存放到服务器,直接给浏览器输出文件流

优点:

1、随时生成,不需要占用资源

2、可以结合身份认证

3、同样利于数据交换

实现方法:

SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings);

SqlDataAdapter da=new SqlDataAdapter("select * from tb1",conn);

DataSet ds=new DataSet();

da.Fill(ds,"table1");

DataTable dt=ds.Tables;

StringWriter sw=new StringWriter();

sw.WriteLine("自动编号,姓名,年龄");

foreach(DataRow dr in dt.Rows)

{sw.WriteLine(dr "," dr "," dr);}

sw.Close();

Response.AddHeader("Content-Disposition", "attachment; filename=test.csv");

Response.ContentType = "application/ms-excel";

Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");

Response.Write(sw);

Response.End();

对方法一,二补充一点,如果你希望导出的是xls文件分隔符用t就可以了,不要用逗号

代码修改如下:

sw.WriteLine("自动编号t姓名t年龄");

foreach(DataRow dr in dt.Rows)

{sw.WriteLine(dr "t" dr "t" dr);}

另外,修改输出的文件扩展名为xls即可。

方法三:从datagrid导出html代码,生成excel文件,给客户端下载

实现方法:

Response.Clear();

Response.Buffer= false;

Response.Charset="GB2312";

Response.AppendHeader("Content-Disposition","attachment;filename=test.xls");

Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312"); Response.ContentType = "application/ms-excel"; this.EnableViewState = false;

System.IO.StringWriter oStringWriter = new System.IO.StringWriter();

System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);

this.DataGrid1.RenderControl(oHtmlTextWriter);

Response.Write(oStringWriter.ToString());

Response.End();

在这里说明一点:有的网友反映代码出现“没有dr”之类的错误,这个代码是按照我的数据结构来写的,到时候相关的字段要换成你自己的才是。

还有就是如果文件名需要中文的话,这么修改Response.AddHeader("Content-Disposition", "attachment; filename=" System.Web.HttpUtility.UrlEncode("中文",System.Text.Encoding.UTF8) ".xls");


⑵ 在asp.net中,无法添加数据库链接,怎么解决呢

1、打开SDK 命令提示(所有程序——Microsoft .NET Framework SDK v2.0——SDK 命令提示。也可打开VS的命令提示),输入aspnet_regsql,弹出ASP.NET SQL Server 安装向导,点下一步,点“为应用程序服务配置 SQL Server”,点下一步,数据库用<默认>(aspnetdb),点下一步,完成。
2、打开Visual Studio 2005,依次:工具-->选项-->数据库工具-->数据连接-->SQL Server实例名称(默认为空),改为你的服务器名称(默认实例的名称即为你的计算机名称)。
3、还是Visual Studio 2005,工具-->连接到数据库-->服务器名(输入刚才的服务器),可以按你要求选择Windows或SQL Server身份验证,然后数据库选择刚才的aspnetdb。测试OK后,点“高级”,复制对话窗口的最下面一行语句(比如,如果你之前选择“使用SQL Server身份验证”,则复制出来的语句类似为Data Source=Server;Initial Catalog=aspnetdb;User ID=sa)
4、打开IIS:默认网站-->属性-->ASP.NET-->编辑全局配置-->常规-->点击“连接字符串管理器”的“LocalSqlServer”后,点编辑,然后清除里面的字符串,再粘贴第3步所复制的字符串,如果你第3步是选择SQL Server身份验证的,还需在后边再手动输入“;Password=sa”,当然,后面的sa用你的密码替换,然后确定,如果第3步是Windows身份验证的,则粘贴后直接确定保存即可 -->应用。(如果第3步是选择SQL Server身份验证的,则修改后的连接字符串类似为Data Source=Server;Initial Catalog=aspnetdb;User ID=sa;Password=sa)
5、还是在IIS:默认网站-->属性-->ASP.NET-->编辑全局配置-->身份验证-->选定"启用角色管理"-->确定。
按照上面的步骤,到第2步时就无法完成,提示sql server不存在。突然想到,会不会sql server express服务还没启动?打开服务管理,果然。手动启动它,又提示启动失败,请查看日志。打开管理工具中的事件查看器,错误信息:
文件 "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\mastlog.ldf" 已压缩,但未驻留在只读数据库或文件组中。必须将此文件解压缩。

⑶ 如何让您的ASP.NET数据库连接字符串是安全的

一、Data 的DataSource属性,对应connectionString中的Data Source,“Data Source”可以由下列字符串代替:“server”,“address”,“addr”和“network address”。Data Source=.\SQLExpress也可以写成这样Data Source=(local)\SQLExpress。
二、Integrated 的IntegratedSecurity属性,对应connectionString中的Integrated Security,“Integrated Security”可以写成“trusted_connection”,为true时,使用当前的 Windows 帐户凭据进行身份验证,为false时,需要在连接中指定用户 ID 和密码。
三、的AttachDBFilename属性,对应connectionString中的AttachDBFilename,“AttachDBFilename”可以写成“extended properties”,“initial file name”。AttachDbFileName属性指定连接打开的时候动态附加到服务器上的数据库文件的位置。这个属性可以接受数据库的完整路径和相对路径(例如使用|DataDirectory|语法),在运行时这个路径会被应用程序的App_Data目录所代替。
四、User 的UserInstance属性,对应connectionString中的User Instance ,该值指示是否将连接从默认的 SQL Server Express 实例重定向到在调用方帐户之下运行并且在运行时启动的实例。UserInstance=true,在这种情况下,SQLServerExpress为了把数据库附加到新的实例,建立一个新的进程,在打开连接的用户身份下运行。在ASP.NET应用程序中,这个用户是本地的ASPNET帐号或默认的NetworkService,这依赖于操作系统。为了安全地附加非系统管理员帐号(例如ASP.NET帐号)提供的数据库文件,建立一个独立的SQLServer用户实例是必要的。

⑷ asp.net网站无法连接到数据库

1、导入命名空间
using System.Data.SqlClient; //连接SQLServer 数据库专用

2、创建连接
SqlConnection lo_conn = New SqlConnection("Server=服务器名字或IP;Database=数据库名字;uid=用户名;pwd=密码");

3、打开连接,第2步并没有真正连接数据库
lo_conn.Open(); //真正与数据库连接

4、向数据库发送SQL命令要使用SqlCommand:
SqlCommand lo_cmd = new SqlCommand(); //创建命令对象
lo_cmd.CommandText = "这里是SQL语句"; //写SQL语句
lo_cmd.Connection = lo_con; //指定连接对象,即上面创建的

5、处理SQL命令或返回结果集
lo_cmd.ExecuteNonQuery(); //这个仅仅执行SQL命令,不返回结果集,实用于建表、批量更新等不需要返回结果的操作。
SqlDataReader lo_reader = lo_cmd.ExecuteReader();//返回结果集

6、以数据集的方式反回结果集
SqlDataAdapter dbAdapter = new SqlDataAdapter(lo_cmd); //注意与上面的区分开
DataSet ds = new DataSet(); //创建数据集对象
dbAdapter.Fill(ds); //用返回的结果集填充数据集,这个数据集可以被能操作数据的控件DataBind

7、关闭连接
lo_conn.Close();

热点内容
缓存与存储 发布:2025-04-25 17:14:59 浏览:739
sql中selectinto语句 发布:2025-04-25 17:14:14 浏览:219
pilpython安装 发布:2025-04-25 17:12:55 浏览:804
安卓手机usb偏好设置在哪里 发布:2025-04-25 17:02:53 浏览:575
梁箍筋加密区间 发布:2025-04-25 17:02:10 浏览:427
大同忘记密码找回多少钱 发布:2025-04-25 16:55:22 浏览:985
手机ip被加入黑名单限制访问 发布:2025-04-25 16:40:51 浏览:731
内网的服务器地址怎么查 发布:2025-04-25 16:29:32 浏览:926
视频缓存下载浏览器 发布:2025-04-25 16:21:53 浏览:1002
批量抖音脚本 发布:2025-04-25 15:58:10 浏览:836