当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 在asp.net中操作sql server数据库的一些小技巧

ASP.NET
VS 2008和.NET 3.5 Beta2新特性介绍
VS 2008和.NET 3.5 Beta2常见问题的解决方案
Asp.net 备份和还原SQL Server及压缩Access数据库
Asp.Net中动态页面转静态页面
ASP.NET缓存:方法分析和实践示例
ASP.NET Forms验证(自定义、角色提供程序)
ASP.NET 2.0当中的Call Back机制
ASP.NET中MD5和SHA1加密的几种方法
在ASP.NET Atlas中调用Web Service
Cast的妙用:泛用LINQ 語句
ASP.NET将物件序列化成Binary储存至DB or File
使用Ajax后,原来导出功能失败的解决方法
装箱、转型、方法调用他们究竟有什么区别?
ASP.NET MVC :实现我们自己的视图引擎
如何构造一个C#语言的爬虫程序
Asp.net Mvc Framework可以在Controller中使用的Url.Action方法
校内网API的.net版本XiaoNei.Net 1.0(非官方)
使用ExtJS GridPanel从Web Service 获取、绑定和显示数据
从UI->DB一条龙到代码生成到EOS,谈谈快速开发
ASP.Net安装简明手册

ASP.NET 中的 在asp.net中操作sql server数据库的一些小技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 61 ::
收藏到网摘: n/a

1.给数据库语句参数传递

向数据库操作语句传递参数可以通过存储过程实现,这里给出另外两种简便易捷的方法:

可以在C#中通过字符串操作将参数直接传入SQL语句变量中,例如:

strings="Davolio";

stringsql="select*fromemployeeswhereLastName="+"'"+s+"'"

相当于写入SQL语句:

select*fromemployeeswhereLastName='Davolio'
也可以通过thisCommand.Parameters.Add()方法实现,如下所示:

strings="Davolio";


SqlConnectionthisConnection=newSqlConnection

("DataSource=(local);InitialCatalog=Northwind;UID=sa;PWD=");

thisConnection.Open();

SqlCommandthisCommand=thisConnection.CreateCommand();


thisCommand.CommandText=

"select*fromemployeeswhere

thisCommand.Parameters.Add("@charname",s);

 

可以看到,字符串s将参数“Ddbolio”传递给数据库操作语句中的参数charname。

2.将数据库中不同表内的数据读入到数据集DataSet中

SqlDataAdapter的Fill方法可以填充已知数据集,并且为每个填充项创建一个临时表,可以通过对该表的访问来读取数据集中的相关数据。其相关操作如下所示:


SqlConnectionthisConnection=newSqlConnection

("DataSource=(local);InitialCatalog=Northwind;UID=sa;PWD=");

try

{

thisConnection.Open();

}

catch(Exceptionex)

{

thisConnection.Close();

}

stringsql1="select*fromemployees";

stringsql2="select*fromCustomers";

SqlDataAdaptersda=newSqlDataAdapter(sql1,thisConnection);

DataSetds=newDataSet();

sda.Fill(ds,"myemployees");

sda.Dispose();

SqlDataAdaptersda1=newSqlDataAdapter(sql2,thisConnection);

sda1.Fill(ds,"myCustomers");

sda1.Dispose();

 

stringt1=ds.Tables["myemployees"].Rows[0]["Hiredate"].ToString();

stringt2=ds.Tables["myCustomers"].Rows[0]["ContactTitle"].ToString();

Page.RegisterStartupScript("aa","<scriptlanguage=javascript>alert('t1="+t1+",t2="+t2+"');</script>");


可以看到,在数据集ds中新生成了两个临时表“myemployees”和“myCustomers”。为验证这两个表中数据确实已读入数据集ds中,通过数据读取操作将表“myemployees”中对应于属性“Hiredate”的第一行赋值给字符型变量t1,将表“myCustomers”中对应于属性“ContactTitle”的第一行赋值给字符型变量t2,并通过JavaStript函数“alert()”将这些变量显示到弹出窗口中。Page.RegisterStartupScript方法用于发出客户端脚本块,其第一个参数为标志位,用户可以任意选取,第二个参数为JavaScript脚本,这里alert函数用来弹出MessageBox对话框,我们将参数t1和t2传入该脚本中,使其在MessageBox中显示出来。

ps:由于网络速度太慢,不能将相关的显示图表传到服务器,真一大遗憾。还有不知道编写代码的样式和格式,使得给出的代码显得很零乱。