莫相离 发表于 2015-1-16 22:29:40

ASP.NET网页设计剖析在ASP.NET中挪用存储历程的办法

捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。  在利用.NET的过程当中,数据库会见是一个很主要的部分,出格是在B/S体系的构建过程当中,数据库操纵几近成了一个必不成少的操纵。挪用存储历程完成数据库操纵使良多程序员利用的办法,并且年夜多半的程序员都是能利用存储历程就利用存储历程,很少间接利用SQL语句,以是存储历程是很有效并且很主要的。
  存储历程简介
  复杂的说,存储历程是由一些SQL语句和把持语句构成的被封装起来的历程,它驻留在数据库中,能够被客户使用程序挪用,也能够从另外一个历程或触发器挪用。它的参数能够被传送和前往。与使用程序中的函数历程相似,存储历程能够经由过程名字来挪用,并且它们一样有输出参数和输入参数。
  依据前往值范例的分歧,我们能够将存储历程分为三类:前往纪录集的存储历程,前往数值的存储历程(也能够称为标量存储历程),和举动存储历程。望文生义,前往纪录集的存储历程的实行了局是一个纪录集,典范的例子是从数据库中检索出切合某一个或几个前提的纪录;前往数值的存储历程实行完今后前往一个值,比方在数据库中实行一个有前往值的函数或命令;最初,举动存储历程仅仅是用来完成数据库的某个功效,而没有前往值,比方在数据库中的更新和删除操纵。
  利用存储历程的优点
  相对间接利用SQL语句,在使用程序中间接挪用存储历程有以下优点:
  (1)削减收集通讯量。挪用一个行数未几的存储历程与间接挪用SQL语句的收集通讯量大概不会有很年夜的不同,但是假如存储历程包括上百行SQL语句,那末其功能相对比一条一条的挪用SQL语句要高很多。
  (2)实行速率更快。有两个缘故原由:起首,在存储历程创立的时分,数据库已对其举行了一次剖析和优化。其次,存储历程一旦实行,在内存中就会保存一份这个存储历程,如许下次再实行一样的存储历程时,能够从内存中间接挪用。
  (3)更强的顺应性:因为存储历程对数据库的会见是经由过程存储历程来举行的,因而数据库开辟职员能够在不修改存储历程接口的情形下对数据库举行任何修改,而这些修改不会对使用程序形成影响。
  (4)布式事情:使用程序和数据库的编码事情能够分离自力举行,而不会互相压抑。
  由以上的剖析能够看到,在使用程序中利用存储历程是很有需要的。
  两种分歧的存储历程挪用办法
  为了凸起新办法的长处,起首先容一下在.NET中挪用存储历程的“官方”办法。别的,本文的一切示例程序均事情于SqlServer数据库上,别的情形相似,今后不再逐一申明。本文一切例子均接纳C#言语。
  要在使用程序中会见数据库,一样平常性的步骤是:起首声明一个数据库毗连SqlConnection,然后声明一个数据库命令SqlCommand,用来实行SQL语句和存储历程。有了这两个工具后,就能够依据本人的必要接纳分歧的实行体例到达目标。必要增补的是,不要健忘在页面上增加以下的援用语句:usingSystem.Data.SqlClient。
  就实行存储历程来讲,假如实行的是第一类存储历程,那末就要用一个DataAdapter将了局添补到一个DataSet中,然后就能够利用数据网格控件将了局出现在页面上了;假如实行的是第二和第三种存储历程,则不必要此历程,只必要依据特定的前往判断操纵是不是乐成完成便可。
  (1)实行一个没有参数的存储历程的代码以下:

SqlConnectionconn=newSqlConnection(“connectionString”);
SqlDataAdapterda=newSqlDataAdapter();
da.SelectCommand=newSqlCommand();
da.SelectCommand.Connection=conn;
da.SelectCommand.CommandText="NameOfProcedure";
da.SelectCommand.CommandType=CommandType.StoredProcedure;

  然后只需选择得当的体例实行此处历程,用于分歧的目标便可。
  (2)实行一个有参数的存储历程的代码以下(我们能够将挪用存储历程的函数声明为ExeProcedure(stringinputdate)):

SqlConnectionconn=newSqlConnection(“connectionString”);
SqlDataAdapterda=newSqlDataAdapter();
da.SelectCommand=newSqlCommand();
da.SelectCommand.Connection=conn;
da.SelectCommand.CommandText="NameOfProcedure";
da.SelectCommand.CommandType=CommandType.StoredProcedure;
(以上代码不异,以下为要增加的代码)
param=newSqlParameter("@ParameterName",SqlDbType.DateTime);
param.Direction=ParameterDirection.Input;
param.Value=Convert.ToDateTime(inputdate);
da.SelectCommand.Parameters.Add(param);
共2页:上一页1下一页
呵呵,那你就关注微软的招聘信息以及别人的招聘经验啊,还有也不一定去做技术的,你如果真的想去就多了解了解。(其实我的意思是说想到微软做技术是很不容易的。

爱飞 发表于 2015-1-19 15:13:38

JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。

蒙在股里 发表于 2015-1-19 15:13:38

我的意思是.net好用,从功能上来说比JAVA强还是很明显的。

因胸联盟 发表于 2015-2-5 05:54:05

PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。

精灵巫婆 发表于 2015-2-11 06:36:27

但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。

不帅 发表于 2015-3-1 23:20:15

ASP.net的速度是ASP不能比拟的。ASP.net是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0。

愤怒的大鸟 发表于 2015-3-11 01:04:22

最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。

第二个灵魂 发表于 2015-3-17 17:31:01

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。

简单生活 发表于 2015-3-24 16:01:43

市场决定一切,我个人从经历上觉得两者至少在很长时间内还是要共存下去,包括C和C++,至少从找工作就看得出来,总不可能大家都像所谓的时尚一样,追捧一门语言并应用它。
页: [1]
查看完整版本: ASP.NET网页设计剖析在ASP.NET中挪用存储历程的办法