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

 更新时间:2006年09月28日 00:00:00   作者:  

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

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

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

string s="Davolio";

string sql= "select * from employees where LastName="+"'"+s+"'"

相当于写入SQL语句:

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

string s="Davolio";


SqlConnection thisConnection=new SqlConnection

("Data Source=(local);Initial Catalog=Northwind;UID=sa;PWD=");

thisConnection.Open ();

SqlCommand thisCommand=thisConnection.CreateCommand ();


thisCommand.CommandText =

" select * from employees where LastName=@charname";

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



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

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

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


SqlConnection thisConnection=new SqlConnection

("Data Source=(local);Initial Catalog=Northwind;UID=sa;PWD=");

try

{

thisConnection.Open ();

}

catch(Exception ex)

{

thisConnection.Close ();

}

 

string sql1="select * from employees";

string sql2="select * from Customers";

SqlDataAdapter sda=new SqlDataAdapter(sql1,thisConnection);

DataSet ds= new DataSet();

sda.Fill(ds,"myemployees");

sda.Dispose();

 

SqlDataAdapter sda1=new SqlDataAdapter(sql2,thisConnection);

sda1.Fill(ds,"myCustomers");

sda1.Dispose();



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

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

 

Page.RegisterStartupScript("aa","<script language=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:由于网络速度太慢,不能将相关的显示图表传到服务器,真一大遗憾。还有不知道编写代码的样式和格式,使得给出的代码显得很零乱。

相关文章

  • IIS中ASP.NET连接SQL Server出错的解决方法

    IIS中ASP.NET连接SQL Server出错的解决方法

    在IIS中运行的ASP.NET应用程序其所属用户名为ASPNET的特定用户,其默认权限是无法访问SQL Server的,更不可能访问ASP.NET应用程序的数据库了,因此要在IIS中访问SQL Server就需要给ASPNET帐户赋予相应的权限.
    2010-03-03
  • Hangfire在ASP.NET CORE中的简单实现方法

    Hangfire在ASP.NET CORE中的简单实现方法

    下面小编就为大家分享一篇Hangfire在ASP.NET CORE中的简单实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • Entity Framework Core关联删除

    Entity Framework Core关联删除

    关联删除通常是一个数据库术语,用于描述在删除行时允许自动触发删除关联行的特征;即当主表的数据行被删除时,自动将关联表中依赖的数据行进行删除,或者将外键更新为NULL或默认值。本文将为大家具体介绍一下Entity Framework Core关联删除,需要的可以参考一下
    2021-12-12
  • 在ASP.NET里得到网站的域名

    在ASP.NET里得到网站的域名

    在ASP.NET里得到网站的域名...
    2006-09-09
  • asp.net的公共变量声明问题(解决)

    asp.net的公共变量声明问题(解决)

    前段时间有个项目中登录的时候碰到了声明公共变量的情况,用户类型分为二种类型,所以不同类型用户登录的时候所走的情况不一样,目前用AB分别代表二类用户。
    2013-03-03
  • Asp.net中的页面乱码的问题

    Asp.net中的页面乱码的问题

    Asp.net中的页面乱码的问题...
    2006-09-09
  • asp.net Coolite TablePanel使用

    asp.net Coolite TablePanel使用

    TabPanel控件使用非常简单,但是功能却非常强大,它同MenuPanel、TreePanel一样提供了很多的集合属性,可以定制出丰富的应用。
    2010-03-03
  • VS2013安装提示必须安装ie10的解决办法

    VS2013安装提示必须安装ie10的解决办法

    这篇文章主要为大家详细介绍了VS2013安装提示必须安装ie10的解决办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • asp.net实现递归方法取出菜单并显示在DropDownList中(分栏形式)

    asp.net实现递归方法取出菜单并显示在DropDownList中(分栏形式)

    这篇文章主要介绍了asp.net实现递归方法取出菜单并显示在DropDownList中的方法,涉及asp.net递归算法与DropDownList使用技巧,需要的朋友可以参考下
    2016-06-06
  • ASP.NET MVC5 网站开发框架模型、数据存储、业务逻辑(三)

    ASP.NET MVC5 网站开发框架模型、数据存储、业务逻辑(三)

    上次搭建好了项目框架,但还是觉得不太对劲,后来才想起来没有对开发目标进行定位,这个小demo虽然不用做需求分析,但是要实现什么效果还得明确。后来想了一下就做个最简单的网站,目标定为小公司进行展示用的网站。功能有显示用的文章功能,咨询留言,评论等
    2015-09-09

最新评论